feat: ebay 'buy it now' and 'canada only' filters support
This commit is contained in:
@@ -270,6 +270,8 @@ export default async function fetchEbayItems(
|
||||
strictMode?: boolean;
|
||||
exclusions?: string[];
|
||||
keywords?: string[];
|
||||
buyItNowOnly?: boolean;
|
||||
canadaOnly?: boolean;
|
||||
} = {},
|
||||
) {
|
||||
const {
|
||||
@@ -277,11 +279,27 @@ export default async function fetchEbayItems(
|
||||
maxPrice = Number.MAX_SAFE_INTEGER,
|
||||
strictMode = false,
|
||||
exclusions = [],
|
||||
keywords = [SEARCH_QUERY] // Default to search query if no keywords provided
|
||||
keywords = [SEARCH_QUERY], // Default to search query if no keywords provided
|
||||
buyItNowOnly = true,
|
||||
canadaOnly = true,
|
||||
} = opts;
|
||||
|
||||
// Build eBay search URL - use Canadian site and tracking parameters like real browser
|
||||
const searchUrl = `https://www.ebay.ca/sch/i.html?_nkw=${encodeURIComponent(SEARCH_QUERY)}^&_sacat=0^&_from=R40^&_trksid=p4432023.m570.l1313`;
|
||||
// Build eBay search URL - use Canadian site, Buy It Now filter, and Canada-only preference
|
||||
const urlParams = new URLSearchParams({
|
||||
_nkw: SEARCH_QUERY,
|
||||
_sacat: "0",
|
||||
_from: "R40",
|
||||
});
|
||||
|
||||
if (buyItNowOnly) {
|
||||
urlParams.set("LH_BIN", "1");
|
||||
}
|
||||
|
||||
if (canadaOnly) {
|
||||
urlParams.set("LH_PrefLoc", "1");
|
||||
}
|
||||
|
||||
const searchUrl = `https://www.ebay.ca/sch/i.html?${urlParams.toString()}`;
|
||||
|
||||
const DELAY_MS = Math.max(1, Math.floor(1000 / REQUESTS_PER_SECOND));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user