scrapebadger 0.29.0 → 0.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/dist/index.d.cts +1894 -41
- package/dist/index.d.ts +1894 -41
- package/dist/index.js +650 -36
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +623 -25
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -5699,8 +5699,594 @@ var EbayClient = class {
|
|
|
5699
5699
|
}
|
|
5700
5700
|
};
|
|
5701
5701
|
|
|
5702
|
-
// src/
|
|
5702
|
+
// src/walmart/search.ts
|
|
5703
5703
|
var SearchClient9 = class {
|
|
5704
|
+
constructor(client) {
|
|
5705
|
+
this.client = client;
|
|
5706
|
+
}
|
|
5707
|
+
/**
|
|
5708
|
+
* Search walmart.com.
|
|
5709
|
+
*
|
|
5710
|
+
* @param query - Search keywords, e.g. `"laptop"`.
|
|
5711
|
+
* @param params - Optional page (1-10), sort, price and facet filters.
|
|
5712
|
+
* @returns A page of ~40-60 organic products.
|
|
5713
|
+
*
|
|
5714
|
+
* @remarks
|
|
5715
|
+
* Results dry up after page 10 regardless of `total_results_reported`; bound
|
|
5716
|
+
* a crawl with `max_page`. Sponsored ad tiles are dropped, sponsored
|
|
5717
|
+
* *products* are returned and flagged `is_sponsored`.
|
|
5718
|
+
*/
|
|
5719
|
+
async search(query, params = {}) {
|
|
5720
|
+
return this.client.request("/v1/walmart/search", {
|
|
5721
|
+
params: {
|
|
5722
|
+
query,
|
|
5723
|
+
page: params.page,
|
|
5724
|
+
sort: params.sort,
|
|
5725
|
+
min_price: params.min_price,
|
|
5726
|
+
max_price: params.max_price,
|
|
5727
|
+
facet: params.facet
|
|
5728
|
+
}
|
|
5729
|
+
});
|
|
5730
|
+
}
|
|
5731
|
+
/**
|
|
5732
|
+
* Browse a Walmart category. Same result shape as {@link search}.
|
|
5733
|
+
*
|
|
5734
|
+
* @param path - Browse path, e.g. `"electronics/3944"`, or a `/cp/...` path.
|
|
5735
|
+
* @param params - Optional page (1-11), price and facet filters.
|
|
5736
|
+
*
|
|
5737
|
+
* @remarks
|
|
5738
|
+
* No `sort`: Walmart's browse pages ignore it (verified). Sort on
|
|
5739
|
+
* {@link search} instead.
|
|
5740
|
+
*/
|
|
5741
|
+
async category(path, params = {}) {
|
|
5742
|
+
return this.client.request("/v1/walmart/category", {
|
|
5743
|
+
params: {
|
|
5744
|
+
path,
|
|
5745
|
+
page: params.page,
|
|
5746
|
+
min_price: params.min_price,
|
|
5747
|
+
max_price: params.max_price,
|
|
5748
|
+
facet: params.facet
|
|
5749
|
+
}
|
|
5750
|
+
});
|
|
5751
|
+
}
|
|
5752
|
+
/**
|
|
5753
|
+
* Walmart's current deals, rollbacks and clearance.
|
|
5754
|
+
*
|
|
5755
|
+
* @param params - Optional page (1-11) and price filters.
|
|
5756
|
+
*/
|
|
5757
|
+
async deals(params = {}) {
|
|
5758
|
+
return this.client.request("/v1/walmart/deals", {
|
|
5759
|
+
params: {
|
|
5760
|
+
page: params.page,
|
|
5761
|
+
min_price: params.min_price,
|
|
5762
|
+
max_price: params.max_price
|
|
5763
|
+
}
|
|
5764
|
+
});
|
|
5765
|
+
}
|
|
5766
|
+
/**
|
|
5767
|
+
* Walmart search-box suggestions — the cheapest call in this API.
|
|
5768
|
+
*
|
|
5769
|
+
* @param query - Partial search term, e.g. `"lapt"`.
|
|
5770
|
+
*/
|
|
5771
|
+
async autocomplete(query) {
|
|
5772
|
+
return this.client.request("/v1/walmart/autocomplete", {
|
|
5773
|
+
params: { query }
|
|
5774
|
+
});
|
|
5775
|
+
}
|
|
5776
|
+
};
|
|
5777
|
+
|
|
5778
|
+
// src/walmart/products.ts
|
|
5779
|
+
var ProductsClient4 = class {
|
|
5780
|
+
constructor(client) {
|
|
5781
|
+
this.client = client;
|
|
5782
|
+
}
|
|
5783
|
+
/**
|
|
5784
|
+
* Get full product detail.
|
|
5785
|
+
*
|
|
5786
|
+
* @param itemId - Walmart `usItemId`, e.g. `"5689919121"`.
|
|
5787
|
+
* @throws NotFoundError - If the item doesn't exist.
|
|
5788
|
+
*
|
|
5789
|
+
* @remarks
|
|
5790
|
+
* Only the numeric id is needed — the SEO slug is decorative and ignored by
|
|
5791
|
+
* Walmart's router. Prices and availability are store-specific; the resolved
|
|
5792
|
+
* store is on `location`.
|
|
5793
|
+
*/
|
|
5794
|
+
async get(itemId) {
|
|
5795
|
+
return this.client.request(`/v1/walmart/products/${itemId}`);
|
|
5796
|
+
}
|
|
5797
|
+
/**
|
|
5798
|
+
* Get paginated customer reviews with the full star histogram.
|
|
5799
|
+
*
|
|
5800
|
+
* @param itemId - Walmart `usItemId`.
|
|
5801
|
+
* @param params - Optional page (1-100) and sort.
|
|
5802
|
+
* @returns Reviews plus the rating breakdown, aspects, and the most-helpful
|
|
5803
|
+
* positive and negative reviews.
|
|
5804
|
+
*
|
|
5805
|
+
* @remarks 10 reviews per page — Walmart's page size, not adjustable.
|
|
5806
|
+
*/
|
|
5807
|
+
async reviews(itemId, params = {}) {
|
|
5808
|
+
return this.client.request(
|
|
5809
|
+
`/v1/walmart/products/${itemId}/reviews`,
|
|
5810
|
+
{ params: { page: params.page, sort: params.sort } }
|
|
5811
|
+
);
|
|
5812
|
+
}
|
|
5813
|
+
};
|
|
5814
|
+
|
|
5815
|
+
// src/walmart/sellers.ts
|
|
5816
|
+
var SellersClient3 = class {
|
|
5817
|
+
constructor(client) {
|
|
5818
|
+
this.client = client;
|
|
5819
|
+
}
|
|
5820
|
+
/**
|
|
5821
|
+
* Get a marketplace seller's profile — contact details, address, rating,
|
|
5822
|
+
* policies.
|
|
5823
|
+
*
|
|
5824
|
+
* @param sellerId - Numeric catalog seller id, e.g. `"101040442"`. This is
|
|
5825
|
+
* the `seller.catalog_seller_id` on a product — NOT the 32-char hex
|
|
5826
|
+
* `seller_id`, which 404s as a storefront URL.
|
|
5827
|
+
*
|
|
5828
|
+
* @remarks
|
|
5829
|
+
* No page parameter and no product list: adding `?page=` makes Walmart's own
|
|
5830
|
+
* SSR throw. Use {@link products} for the catalogue.
|
|
5831
|
+
*/
|
|
5832
|
+
async get(sellerId) {
|
|
5833
|
+
return this.client.request(`/v1/walmart/sellers/${sellerId}`);
|
|
5834
|
+
}
|
|
5835
|
+
/**
|
|
5836
|
+
* List a marketplace seller's catalogue.
|
|
5837
|
+
*
|
|
5838
|
+
* @param sellerId - Numeric catalog seller id.
|
|
5839
|
+
* @param query - Search term scoping the catalogue. REQUIRED — this goes
|
|
5840
|
+
* through search with a `retailer_id` facet, and the facet alone returns
|
|
5841
|
+
* zero results.
|
|
5842
|
+
* @param params - Optional page (1-10) and sort.
|
|
5843
|
+
*/
|
|
5844
|
+
async products(sellerId, query, params = {}) {
|
|
5845
|
+
return this.client.request(
|
|
5846
|
+
`/v1/walmart/sellers/${sellerId}/products`,
|
|
5847
|
+
{ params: { query, page: params.page, sort: params.sort } }
|
|
5848
|
+
);
|
|
5849
|
+
}
|
|
5850
|
+
};
|
|
5851
|
+
|
|
5852
|
+
// src/walmart/stores.ts
|
|
5853
|
+
var StoresClient = class {
|
|
5854
|
+
constructor(client) {
|
|
5855
|
+
this.client = client;
|
|
5856
|
+
}
|
|
5857
|
+
/**
|
|
5858
|
+
* Get store detail plus every store around it.
|
|
5859
|
+
*
|
|
5860
|
+
* @param storeId - Walmart store number, e.g. `"100"`.
|
|
5861
|
+
* @returns The store's address, geo, phone, opening hours and per-department
|
|
5862
|
+
* services (each with its own hours and phone), plus ~30 nearby stores.
|
|
5863
|
+
*/
|
|
5864
|
+
async get(storeId) {
|
|
5865
|
+
return this.client.request(`/v1/walmart/stores/${storeId}`);
|
|
5866
|
+
}
|
|
5867
|
+
};
|
|
5868
|
+
|
|
5869
|
+
// src/walmart/reference.ts
|
|
5870
|
+
var ReferenceClient6 = class {
|
|
5871
|
+
constructor(client) {
|
|
5872
|
+
this.client = client;
|
|
5873
|
+
}
|
|
5874
|
+
/**
|
|
5875
|
+
* Get the supported Walmart markets.
|
|
5876
|
+
*
|
|
5877
|
+
* @remarks
|
|
5878
|
+
* Only walmart.com (US) is supported — walmart.ca and walmart.com.mx run on
|
|
5879
|
+
* different platforms with different payload shapes, so they are not claimed
|
|
5880
|
+
* here rather than shipped broken.
|
|
5881
|
+
*/
|
|
5882
|
+
async markets() {
|
|
5883
|
+
return this.client.request("/v1/walmart/markets");
|
|
5884
|
+
}
|
|
5885
|
+
/**
|
|
5886
|
+
* Check the health of the Walmart scraper service.
|
|
5887
|
+
*
|
|
5888
|
+
* @returns The raw health payload from the scraper service.
|
|
5889
|
+
*/
|
|
5890
|
+
async health() {
|
|
5891
|
+
return this.client.request("/v1/walmart/health");
|
|
5892
|
+
}
|
|
5893
|
+
};
|
|
5894
|
+
|
|
5895
|
+
// src/walmart/client.ts
|
|
5896
|
+
var WalmartClient = class {
|
|
5897
|
+
/** Client for search, category browse, deals and autocomplete */
|
|
5898
|
+
search;
|
|
5899
|
+
/** Client for product detail and reviews */
|
|
5900
|
+
products;
|
|
5901
|
+
/** Client for marketplace seller profile and catalogue */
|
|
5902
|
+
sellers;
|
|
5903
|
+
/** Client for store detail and nearby stores */
|
|
5904
|
+
stores;
|
|
5905
|
+
/** Client for reference data (markets) and service health */
|
|
5906
|
+
reference;
|
|
5907
|
+
/**
|
|
5908
|
+
* Create a new Walmart client.
|
|
5909
|
+
*
|
|
5910
|
+
* @param client - The base HTTP client for making requests.
|
|
5911
|
+
*/
|
|
5912
|
+
constructor(client) {
|
|
5913
|
+
this.search = new SearchClient9(client);
|
|
5914
|
+
this.products = new ProductsClient4(client);
|
|
5915
|
+
this.sellers = new SellersClient3(client);
|
|
5916
|
+
this.stores = new StoresClient(client);
|
|
5917
|
+
this.reference = new ReferenceClient6(client);
|
|
5918
|
+
}
|
|
5919
|
+
};
|
|
5920
|
+
|
|
5921
|
+
// src/duckduckgo/search.ts
|
|
5922
|
+
var SearchClient10 = class {
|
|
5923
|
+
constructor(client) {
|
|
5924
|
+
this.client = client;
|
|
5925
|
+
}
|
|
5926
|
+
/**
|
|
5927
|
+
* Search duckduckgo.com.
|
|
5928
|
+
*
|
|
5929
|
+
* @param query - Search keywords, e.g. `"privacy"`.
|
|
5930
|
+
* @param params - Optional region, safesearch, timelimit and page.
|
|
5931
|
+
* @returns A page of web results plus the optional abstract.
|
|
5932
|
+
*/
|
|
5933
|
+
async search(query, params = {}) {
|
|
5934
|
+
return this.client.request("/v1/duckduckgo/search", {
|
|
5935
|
+
params: {
|
|
5936
|
+
query,
|
|
5937
|
+
region: params.region,
|
|
5938
|
+
safesearch: params.safesearch,
|
|
5939
|
+
timelimit: params.timelimit,
|
|
5940
|
+
page: params.page
|
|
5941
|
+
}
|
|
5942
|
+
});
|
|
5943
|
+
}
|
|
5944
|
+
};
|
|
5945
|
+
|
|
5946
|
+
// src/duckduckgo/media.ts
|
|
5947
|
+
var MediaClient2 = class {
|
|
5948
|
+
constructor(client) {
|
|
5949
|
+
this.client = client;
|
|
5950
|
+
}
|
|
5951
|
+
/**
|
|
5952
|
+
* Search DuckDuckGo Images.
|
|
5953
|
+
*
|
|
5954
|
+
* @param query - Search keywords.
|
|
5955
|
+
* @param params - Optional region, safesearch, page and image filters
|
|
5956
|
+
* (size, color, image_type, layout, license).
|
|
5957
|
+
*/
|
|
5958
|
+
async images(query, params = {}) {
|
|
5959
|
+
return this.client.request("/v1/duckduckgo/images", {
|
|
5960
|
+
params: {
|
|
5961
|
+
query,
|
|
5962
|
+
region: params.region,
|
|
5963
|
+
safesearch: params.safesearch,
|
|
5964
|
+
page: params.page,
|
|
5965
|
+
size: params.size,
|
|
5966
|
+
color: params.color,
|
|
5967
|
+
image_type: params.image_type,
|
|
5968
|
+
layout: params.layout,
|
|
5969
|
+
license: params.license
|
|
5970
|
+
}
|
|
5971
|
+
});
|
|
5972
|
+
}
|
|
5973
|
+
/**
|
|
5974
|
+
* Search DuckDuckGo News.
|
|
5975
|
+
*
|
|
5976
|
+
* @param query - Search keywords.
|
|
5977
|
+
* @param params - Optional region, safesearch, timelimit and page.
|
|
5978
|
+
*/
|
|
5979
|
+
async news(query, params = {}) {
|
|
5980
|
+
return this.client.request("/v1/duckduckgo/news", {
|
|
5981
|
+
params: {
|
|
5982
|
+
query,
|
|
5983
|
+
region: params.region,
|
|
5984
|
+
safesearch: params.safesearch,
|
|
5985
|
+
timelimit: params.timelimit,
|
|
5986
|
+
page: params.page
|
|
5987
|
+
}
|
|
5988
|
+
});
|
|
5989
|
+
}
|
|
5990
|
+
/**
|
|
5991
|
+
* Search DuckDuckGo Videos.
|
|
5992
|
+
*
|
|
5993
|
+
* @param query - Search keywords.
|
|
5994
|
+
* @param params - Optional region, safesearch, page, duration and resolution.
|
|
5995
|
+
*/
|
|
5996
|
+
async videos(query, params = {}) {
|
|
5997
|
+
return this.client.request("/v1/duckduckgo/videos", {
|
|
5998
|
+
params: {
|
|
5999
|
+
query,
|
|
6000
|
+
region: params.region,
|
|
6001
|
+
safesearch: params.safesearch,
|
|
6002
|
+
page: params.page,
|
|
6003
|
+
duration: params.duration,
|
|
6004
|
+
resolution: params.resolution
|
|
6005
|
+
}
|
|
6006
|
+
});
|
|
6007
|
+
}
|
|
6008
|
+
};
|
|
6009
|
+
|
|
6010
|
+
// src/duckduckgo/reference.ts
|
|
6011
|
+
var ReferenceClient7 = class {
|
|
6012
|
+
constructor(client) {
|
|
6013
|
+
this.client = client;
|
|
6014
|
+
}
|
|
6015
|
+
/**
|
|
6016
|
+
* Search-box suggestions for a partial query.
|
|
6017
|
+
*
|
|
6018
|
+
* @param query - Partial search term, e.g. `"weath"`.
|
|
6019
|
+
* @param params - Optional region.
|
|
6020
|
+
*/
|
|
6021
|
+
async autocomplete(query, params = {}) {
|
|
6022
|
+
return this.client.request("/v1/duckduckgo/autocomplete", {
|
|
6023
|
+
params: {
|
|
6024
|
+
query,
|
|
6025
|
+
region: params.region
|
|
6026
|
+
}
|
|
6027
|
+
});
|
|
6028
|
+
}
|
|
6029
|
+
/**
|
|
6030
|
+
* DuckDuckGo Instant Answer (zero-click info) for a query.
|
|
6031
|
+
*
|
|
6032
|
+
* @param query - The query, e.g. `"python"`.
|
|
6033
|
+
*/
|
|
6034
|
+
async instant(query) {
|
|
6035
|
+
return this.client.request("/v1/duckduckgo/instant", {
|
|
6036
|
+
params: { query }
|
|
6037
|
+
});
|
|
6038
|
+
}
|
|
6039
|
+
/**
|
|
6040
|
+
* Get the supported DuckDuckGo search regions.
|
|
6041
|
+
*/
|
|
6042
|
+
async regions() {
|
|
6043
|
+
return this.client.request("/v1/duckduckgo/regions");
|
|
6044
|
+
}
|
|
6045
|
+
};
|
|
6046
|
+
|
|
6047
|
+
// src/duckduckgo/client.ts
|
|
6048
|
+
var DuckDuckGoClient = class {
|
|
6049
|
+
/** Client for web search with the optional Instant-Answer abstract */
|
|
6050
|
+
search;
|
|
6051
|
+
/** Client for image, news and video search */
|
|
6052
|
+
media;
|
|
6053
|
+
/** Client for autocomplete, instant answers and supported regions */
|
|
6054
|
+
reference;
|
|
6055
|
+
/**
|
|
6056
|
+
* Create a new DuckDuckGo client.
|
|
6057
|
+
*
|
|
6058
|
+
* @param client - The base HTTP client for making requests.
|
|
6059
|
+
*/
|
|
6060
|
+
constructor(client) {
|
|
6061
|
+
this.search = new SearchClient10(client);
|
|
6062
|
+
this.media = new MediaClient2(client);
|
|
6063
|
+
this.reference = new ReferenceClient7(client);
|
|
6064
|
+
}
|
|
6065
|
+
};
|
|
6066
|
+
|
|
6067
|
+
// src/bing/search.ts
|
|
6068
|
+
var SearchClient11 = class {
|
|
6069
|
+
constructor(client) {
|
|
6070
|
+
this.client = client;
|
|
6071
|
+
}
|
|
6072
|
+
/**
|
|
6073
|
+
* Search bing.com — the web SERP.
|
|
6074
|
+
*
|
|
6075
|
+
* @param query - Search keywords, e.g. `"coffee machine"`.
|
|
6076
|
+
* @param params - Optional market, count, offset and safe-search filter.
|
|
6077
|
+
* @returns A page of organic results, ads and related searches.
|
|
6078
|
+
*/
|
|
6079
|
+
async search(query, params = {}) {
|
|
6080
|
+
return this.client.request("/v1/bing/search", {
|
|
6081
|
+
params: {
|
|
6082
|
+
query,
|
|
6083
|
+
market: params.market,
|
|
6084
|
+
count: params.count,
|
|
6085
|
+
offset: params.offset,
|
|
6086
|
+
safe_search: params.safe_search
|
|
6087
|
+
}
|
|
6088
|
+
});
|
|
6089
|
+
}
|
|
6090
|
+
/**
|
|
6091
|
+
* Bing search-box suggestions — the cheapest call in this API.
|
|
6092
|
+
*
|
|
6093
|
+
* @param query - Partial search term, e.g. `"coff"`.
|
|
6094
|
+
* @param params - Optional market.
|
|
6095
|
+
*/
|
|
6096
|
+
async autocomplete(query, params = {}) {
|
|
6097
|
+
return this.client.request("/v1/bing/autocomplete", {
|
|
6098
|
+
params: {
|
|
6099
|
+
query,
|
|
6100
|
+
market: params.market
|
|
6101
|
+
}
|
|
6102
|
+
});
|
|
6103
|
+
}
|
|
6104
|
+
};
|
|
6105
|
+
|
|
6106
|
+
// src/bing/media.ts
|
|
6107
|
+
var MediaClient3 = class {
|
|
6108
|
+
constructor(client) {
|
|
6109
|
+
this.client = client;
|
|
6110
|
+
}
|
|
6111
|
+
/**
|
|
6112
|
+
* Search Bing images.
|
|
6113
|
+
*
|
|
6114
|
+
* @param query - Search keywords, e.g. `"cats"`.
|
|
6115
|
+
* @param params - Optional market, count and safe-search filter.
|
|
6116
|
+
* @returns Full-size image URLs, thumbnails, pixel dimensions and the
|
|
6117
|
+
* source page each image came from.
|
|
6118
|
+
*/
|
|
6119
|
+
async images(query, params = {}) {
|
|
6120
|
+
return this.client.request("/v1/bing/images", {
|
|
6121
|
+
params: {
|
|
6122
|
+
query,
|
|
6123
|
+
market: params.market,
|
|
6124
|
+
count: params.count,
|
|
6125
|
+
safe_search: params.safe_search
|
|
6126
|
+
}
|
|
6127
|
+
});
|
|
6128
|
+
}
|
|
6129
|
+
/**
|
|
6130
|
+
* Search Bing videos.
|
|
6131
|
+
*
|
|
6132
|
+
* @param query - Search keywords, e.g. `"cats"`.
|
|
6133
|
+
* @param params - Optional market, count and safe-search filter.
|
|
6134
|
+
* @returns Video URLs, thumbnails, duration, publisher and view counts.
|
|
6135
|
+
*/
|
|
6136
|
+
async videos(query, params = {}) {
|
|
6137
|
+
return this.client.request("/v1/bing/videos", {
|
|
6138
|
+
params: {
|
|
6139
|
+
query,
|
|
6140
|
+
market: params.market,
|
|
6141
|
+
count: params.count,
|
|
6142
|
+
safe_search: params.safe_search
|
|
6143
|
+
}
|
|
6144
|
+
});
|
|
6145
|
+
}
|
|
6146
|
+
};
|
|
6147
|
+
|
|
6148
|
+
// src/bing/news.ts
|
|
6149
|
+
var NewsClient2 = class {
|
|
6150
|
+
constructor(client) {
|
|
6151
|
+
this.client = client;
|
|
6152
|
+
}
|
|
6153
|
+
/**
|
|
6154
|
+
* Search the Bing news vertical.
|
|
6155
|
+
*
|
|
6156
|
+
* @param query - Search keywords, e.g. `"artificial intelligence"`.
|
|
6157
|
+
* @param params - Optional market and freshness (`"day"`, `"week"`, `"month"`).
|
|
6158
|
+
* @returns Articles carrying publisher, publish dates and real URLs.
|
|
6159
|
+
*/
|
|
6160
|
+
async news(query, params = {}) {
|
|
6161
|
+
return this.client.request("/v1/bing/news", {
|
|
6162
|
+
params: {
|
|
6163
|
+
query,
|
|
6164
|
+
market: params.market,
|
|
6165
|
+
freshness: params.freshness
|
|
6166
|
+
}
|
|
6167
|
+
});
|
|
6168
|
+
}
|
|
6169
|
+
};
|
|
6170
|
+
|
|
6171
|
+
// src/bing/reference.ts
|
|
6172
|
+
var ReferenceClient8 = class {
|
|
6173
|
+
constructor(client) {
|
|
6174
|
+
this.client = client;
|
|
6175
|
+
}
|
|
6176
|
+
/**
|
|
6177
|
+
* Get the supported Bing markets.
|
|
6178
|
+
*
|
|
6179
|
+
* @returns Every Bing market code, name and country.
|
|
6180
|
+
*/
|
|
6181
|
+
async markets() {
|
|
6182
|
+
return this.client.request("/v1/bing/markets");
|
|
6183
|
+
}
|
|
6184
|
+
};
|
|
6185
|
+
|
|
6186
|
+
// src/bing/client.ts
|
|
6187
|
+
var BingClient = class {
|
|
6188
|
+
/** Client for web search and search-box autocomplete */
|
|
6189
|
+
search;
|
|
6190
|
+
/** Client for image search and video search */
|
|
6191
|
+
media;
|
|
6192
|
+
/** Client for the news vertical */
|
|
6193
|
+
news;
|
|
6194
|
+
/** Client for reference data (markets) */
|
|
6195
|
+
reference;
|
|
6196
|
+
/**
|
|
6197
|
+
* Create a new Bing client.
|
|
6198
|
+
*
|
|
6199
|
+
* @param client - The base HTTP client for making requests.
|
|
6200
|
+
*/
|
|
6201
|
+
constructor(client) {
|
|
6202
|
+
this.search = new SearchClient11(client);
|
|
6203
|
+
this.media = new MediaClient3(client);
|
|
6204
|
+
this.news = new NewsClient2(client);
|
|
6205
|
+
this.reference = new ReferenceClient8(client);
|
|
6206
|
+
}
|
|
6207
|
+
};
|
|
6208
|
+
|
|
6209
|
+
// src/baidu/client.ts
|
|
6210
|
+
var BaiduClient = class {
|
|
6211
|
+
client;
|
|
6212
|
+
constructor(client) {
|
|
6213
|
+
this.client = client;
|
|
6214
|
+
}
|
|
6215
|
+
/**
|
|
6216
|
+
* Search baidu.com — the web SERP.
|
|
6217
|
+
*
|
|
6218
|
+
* Costs 5 credits.
|
|
6219
|
+
*
|
|
6220
|
+
* @param query - Search keywords, e.g. `"咖啡机"` or `"coffee machine"` (required).
|
|
6221
|
+
* @param options - Optional parameters (page, num, language, timeFrom, timeTo).
|
|
6222
|
+
* @returns Search response with organic results and Baidu's related searches.
|
|
6223
|
+
* @throws AuthenticationError - If the API key is invalid.
|
|
6224
|
+
* @throws ValidationError - If the parameters are invalid.
|
|
6225
|
+
*/
|
|
6226
|
+
async search(query, options = {}) {
|
|
6227
|
+
return this.client.request("/v1/baidu/search", {
|
|
6228
|
+
params: {
|
|
6229
|
+
query,
|
|
6230
|
+
page: options.page,
|
|
6231
|
+
num: options.num,
|
|
6232
|
+
language: options.language,
|
|
6233
|
+
time_from: options.timeFrom,
|
|
6234
|
+
time_to: options.timeTo
|
|
6235
|
+
}
|
|
6236
|
+
});
|
|
6237
|
+
}
|
|
6238
|
+
/**
|
|
6239
|
+
* Search the Baidu news vertical.
|
|
6240
|
+
*
|
|
6241
|
+
* Costs 5 credits.
|
|
6242
|
+
*
|
|
6243
|
+
* @param query - Search keywords, e.g. `"人工智能"` (required).
|
|
6244
|
+
* @param options - Optional parameters (page, sort).
|
|
6245
|
+
* @returns News response with articles carrying publisher, date and real URLs.
|
|
6246
|
+
* @throws AuthenticationError - If the API key is invalid.
|
|
6247
|
+
* @throws ValidationError - If the parameters are invalid.
|
|
6248
|
+
*/
|
|
6249
|
+
async news(query, options = {}) {
|
|
6250
|
+
return this.client.request("/v1/baidu/news", {
|
|
6251
|
+
params: { query, page: options.page, sort: options.sort }
|
|
6252
|
+
});
|
|
6253
|
+
}
|
|
6254
|
+
/**
|
|
6255
|
+
* Search Baidu images.
|
|
6256
|
+
*
|
|
6257
|
+
* Costs 5 credits.
|
|
6258
|
+
*
|
|
6259
|
+
* @param query - Search keywords, e.g. `"猫"` (required).
|
|
6260
|
+
* @param options - Optional parameters (page). Baidu serves 30 images per page.
|
|
6261
|
+
* @returns Images response with full-size image URLs, Baidu-hosted thumbnail
|
|
6262
|
+
* copies, pixel dimensions and the source page each image came from.
|
|
6263
|
+
* @throws AuthenticationError - If the API key is invalid.
|
|
6264
|
+
* @throws ValidationError - If the parameters are invalid.
|
|
6265
|
+
*/
|
|
6266
|
+
async images(query, options = {}) {
|
|
6267
|
+
return this.client.request("/v1/baidu/images", {
|
|
6268
|
+
params: { query, page: options.page }
|
|
6269
|
+
});
|
|
6270
|
+
}
|
|
6271
|
+
/**
|
|
6272
|
+
* Baidu search-box suggestions — the cheapest call in this API.
|
|
6273
|
+
*
|
|
6274
|
+
* Costs 1 credit.
|
|
6275
|
+
*
|
|
6276
|
+
* @param query - Partial search term, e.g. `"咖啡"` or `"coff"` (required).
|
|
6277
|
+
* @returns Autocomplete response with Baidu's suggestions for the term.
|
|
6278
|
+
* @throws AuthenticationError - If the API key is invalid.
|
|
6279
|
+
* @throws ValidationError - If the parameters are invalid.
|
|
6280
|
+
*/
|
|
6281
|
+
async autocomplete(query) {
|
|
6282
|
+
return this.client.request("/v1/baidu/autocomplete", {
|
|
6283
|
+
params: { query }
|
|
6284
|
+
});
|
|
6285
|
+
}
|
|
6286
|
+
};
|
|
6287
|
+
|
|
6288
|
+
// src/youtube/search.ts
|
|
6289
|
+
var SearchClient12 = class {
|
|
5704
6290
|
client;
|
|
5705
6291
|
constructor(client) {
|
|
5706
6292
|
this.client = client;
|
|
@@ -6225,7 +6811,7 @@ var MusicClient2 = class {
|
|
|
6225
6811
|
};
|
|
6226
6812
|
|
|
6227
6813
|
// src/youtube/reference.ts
|
|
6228
|
-
var
|
|
6814
|
+
var ReferenceClient9 = class {
|
|
6229
6815
|
client;
|
|
6230
6816
|
constructor(client) {
|
|
6231
6817
|
this.client = client;
|
|
@@ -6293,7 +6879,7 @@ var YoutubeClient = class {
|
|
|
6293
6879
|
* @param client - The base HTTP client for making requests.
|
|
6294
6880
|
*/
|
|
6295
6881
|
constructor(client) {
|
|
6296
|
-
this.search = new
|
|
6882
|
+
this.search = new SearchClient12(client);
|
|
6297
6883
|
this.videos = new VideosClient3(client);
|
|
6298
6884
|
this.channels = new ChannelsClient(client);
|
|
6299
6885
|
this.playlists = new PlaylistsClient(client);
|
|
@@ -6301,12 +6887,12 @@ var YoutubeClient = class {
|
|
|
6301
6887
|
this.shorts = new ShortsClient2(client);
|
|
6302
6888
|
this.trending = new TrendingClient2(client);
|
|
6303
6889
|
this.music = new MusicClient2(client);
|
|
6304
|
-
this.reference = new
|
|
6890
|
+
this.reference = new ReferenceClient9(client);
|
|
6305
6891
|
}
|
|
6306
6892
|
};
|
|
6307
6893
|
|
|
6308
6894
|
// src/realtor/search.ts
|
|
6309
|
-
var
|
|
6895
|
+
var SearchClient13 = class {
|
|
6310
6896
|
client;
|
|
6311
6897
|
constructor(client) {
|
|
6312
6898
|
this.client = client;
|
|
@@ -6380,7 +6966,7 @@ var PropertiesClient = class {
|
|
|
6380
6966
|
};
|
|
6381
6967
|
|
|
6382
6968
|
// src/realtor/reference.ts
|
|
6383
|
-
var
|
|
6969
|
+
var ReferenceClient10 = class {
|
|
6384
6970
|
client;
|
|
6385
6971
|
constructor(client) {
|
|
6386
6972
|
this.client = client;
|
|
@@ -6409,14 +6995,14 @@ var RealtorClient = class {
|
|
|
6409
6995
|
* @param client - The base HTTP client for making requests.
|
|
6410
6996
|
*/
|
|
6411
6997
|
constructor(client) {
|
|
6412
|
-
this.search = new
|
|
6998
|
+
this.search = new SearchClient13(client);
|
|
6413
6999
|
this.properties = new PropertiesClient(client);
|
|
6414
|
-
this.reference = new
|
|
7000
|
+
this.reference = new ReferenceClient10(client);
|
|
6415
7001
|
}
|
|
6416
7002
|
};
|
|
6417
7003
|
|
|
6418
7004
|
// src/leboncoin/search.ts
|
|
6419
|
-
var
|
|
7005
|
+
var SearchClient14 = class {
|
|
6420
7006
|
client;
|
|
6421
7007
|
constructor(client) {
|
|
6422
7008
|
this.client = client;
|
|
@@ -6485,7 +7071,7 @@ var AdsClient2 = class {
|
|
|
6485
7071
|
};
|
|
6486
7072
|
|
|
6487
7073
|
// src/leboncoin/sellers.ts
|
|
6488
|
-
var
|
|
7074
|
+
var SellersClient4 = class {
|
|
6489
7075
|
client;
|
|
6490
7076
|
constructor(client) {
|
|
6491
7077
|
this.client = client;
|
|
@@ -6518,7 +7104,7 @@ var SellersClient3 = class {
|
|
|
6518
7104
|
};
|
|
6519
7105
|
|
|
6520
7106
|
// src/leboncoin/reference.ts
|
|
6521
|
-
var
|
|
7107
|
+
var ReferenceClient11 = class {
|
|
6522
7108
|
client;
|
|
6523
7109
|
constructor(client) {
|
|
6524
7110
|
this.client = client;
|
|
@@ -6589,15 +7175,15 @@ var LeboncoinClient = class {
|
|
|
6589
7175
|
* @param client - The base HTTP client for making requests.
|
|
6590
7176
|
*/
|
|
6591
7177
|
constructor(client) {
|
|
6592
|
-
this.search = new
|
|
7178
|
+
this.search = new SearchClient14(client);
|
|
6593
7179
|
this.ads = new AdsClient2(client);
|
|
6594
|
-
this.sellers = new
|
|
6595
|
-
this.reference = new
|
|
7180
|
+
this.sellers = new SellersClient4(client);
|
|
7181
|
+
this.reference = new ReferenceClient11(client);
|
|
6596
7182
|
}
|
|
6597
7183
|
};
|
|
6598
7184
|
|
|
6599
7185
|
// src/zillow/search.ts
|
|
6600
|
-
var
|
|
7186
|
+
var SearchClient15 = class {
|
|
6601
7187
|
client;
|
|
6602
7188
|
constructor(client) {
|
|
6603
7189
|
this.client = client;
|
|
@@ -6701,7 +7287,7 @@ var AgentClient = class {
|
|
|
6701
7287
|
};
|
|
6702
7288
|
|
|
6703
7289
|
// src/zillow/reference.ts
|
|
6704
|
-
var
|
|
7290
|
+
var ReferenceClient12 = class {
|
|
6705
7291
|
client;
|
|
6706
7292
|
constructor(client) {
|
|
6707
7293
|
this.client = client;
|
|
@@ -6732,10 +7318,10 @@ var ZillowClient = class {
|
|
|
6732
7318
|
* @param client - The base HTTP client for making requests.
|
|
6733
7319
|
*/
|
|
6734
7320
|
constructor(client) {
|
|
6735
|
-
this.search = new
|
|
7321
|
+
this.search = new SearchClient15(client);
|
|
6736
7322
|
this.properties = new PropertiesClient2(client);
|
|
6737
7323
|
this.agent = new AgentClient(client);
|
|
6738
|
-
this.reference = new
|
|
7324
|
+
this.reference = new ReferenceClient12(client);
|
|
6739
7325
|
}
|
|
6740
7326
|
};
|
|
6741
7327
|
|
|
@@ -6870,7 +7456,7 @@ var ImmobiliareClient = class {
|
|
|
6870
7456
|
};
|
|
6871
7457
|
|
|
6872
7458
|
// src/loopnet/search.ts
|
|
6873
|
-
var
|
|
7459
|
+
var SearchClient16 = class {
|
|
6874
7460
|
client;
|
|
6875
7461
|
constructor(client) {
|
|
6876
7462
|
this.client = client;
|
|
@@ -6951,7 +7537,7 @@ var BrokersClient = class {
|
|
|
6951
7537
|
};
|
|
6952
7538
|
|
|
6953
7539
|
// src/loopnet/reference.ts
|
|
6954
|
-
var
|
|
7540
|
+
var ReferenceClient13 = class {
|
|
6955
7541
|
client;
|
|
6956
7542
|
constructor(client) {
|
|
6957
7543
|
this.client = client;
|
|
@@ -6994,10 +7580,10 @@ var LoopNetClient = class {
|
|
|
6994
7580
|
* @param client - The base HTTP client for making requests.
|
|
6995
7581
|
*/
|
|
6996
7582
|
constructor(client) {
|
|
6997
|
-
this.search = new
|
|
7583
|
+
this.search = new SearchClient16(client);
|
|
6998
7584
|
this.listings = new ListingsClient2(client);
|
|
6999
7585
|
this.brokers = new BrokersClient(client);
|
|
7000
|
-
this.reference = new
|
|
7586
|
+
this.reference = new ReferenceClient13(client);
|
|
7001
7587
|
}
|
|
7002
7588
|
};
|
|
7003
7589
|
|
|
@@ -7358,7 +7944,7 @@ var BrandClient = class {
|
|
|
7358
7944
|
};
|
|
7359
7945
|
|
|
7360
7946
|
// src/chatgpt/reference.ts
|
|
7361
|
-
var
|
|
7947
|
+
var ReferenceClient14 = class {
|
|
7362
7948
|
client;
|
|
7363
7949
|
constructor(client) {
|
|
7364
7950
|
this.client = client;
|
|
@@ -7404,7 +7990,7 @@ var ChatGPTClient = class {
|
|
|
7404
7990
|
constructor(client) {
|
|
7405
7991
|
this.ask = new AskClient(client);
|
|
7406
7992
|
this.brand = new BrandClient(client);
|
|
7407
|
-
this.reference = new
|
|
7993
|
+
this.reference = new ReferenceClient14(client);
|
|
7408
7994
|
}
|
|
7409
7995
|
};
|
|
7410
7996
|
|
|
@@ -7435,6 +8021,14 @@ var ScrapeBadger = class {
|
|
|
7435
8021
|
tiktok;
|
|
7436
8022
|
/** eBay scraper API client — 12 endpoints across 18 markets */
|
|
7437
8023
|
ebay;
|
|
8024
|
+
/** Walmart scraper API client — 11 endpoints (walmart.com, US-only) */
|
|
8025
|
+
walmart;
|
|
8026
|
+
/** DuckDuckGo scraper API client — search, images, news, videos, autocomplete, instant, regions */
|
|
8027
|
+
duckduckgo;
|
|
8028
|
+
/** Bing scraper API client — 6 endpoints (search, images, videos, news, autocomplete, markets) */
|
|
8029
|
+
bing;
|
|
8030
|
+
/** Baidu scraper API client — search, news, images, autocomplete (baidu.com, China's #1 search engine) */
|
|
8031
|
+
baidu;
|
|
7438
8032
|
/** YouTube scraper API client — 39 endpoints */
|
|
7439
8033
|
youtube;
|
|
7440
8034
|
/** Realtor scraper API client — 4 endpoints across 2 markets (us, ca) */
|
|
@@ -7499,6 +8093,10 @@ var ScrapeBadger = class {
|
|
|
7499
8093
|
this.shopee = new ShopeeClient(this.baseClient);
|
|
7500
8094
|
this.tiktok = new TikTokClient(this.baseClient);
|
|
7501
8095
|
this.ebay = new EbayClient(this.baseClient);
|
|
8096
|
+
this.walmart = new WalmartClient(this.baseClient);
|
|
8097
|
+
this.duckduckgo = new DuckDuckGoClient(this.baseClient);
|
|
8098
|
+
this.bing = new BingClient(this.baseClient);
|
|
8099
|
+
this.baidu = new BaiduClient(this.baseClient);
|
|
7502
8100
|
this.youtube = new YoutubeClient(this.baseClient);
|
|
7503
8101
|
this.realtor = new RealtorClient(this.baseClient);
|
|
7504
8102
|
this.leboncoin = new LeboncoinClient(this.baseClient);
|
|
@@ -7511,6 +8109,6 @@ var ScrapeBadger = class {
|
|
|
7511
8109
|
}
|
|
7512
8110
|
};
|
|
7513
8111
|
|
|
7514
|
-
export { AccountRestrictedError, AmazonClient, ListingsClient as AmazonListingsClient, ProductsClient2 as AmazonProductsClient, ReferenceClient2 as AmazonReferenceClient, SearchClient5 as AmazonSearchClient, SellersClient as AmazonSellersClient, ApartmentsClient, AuthenticationError, AskClient as ChatGPTAskClient, BrandClient as ChatGPTBrandClient, ChatGPTClient,
|
|
8112
|
+
export { AccountRestrictedError, AmazonClient, ListingsClient as AmazonListingsClient, ProductsClient2 as AmazonProductsClient, ReferenceClient2 as AmazonReferenceClient, SearchClient5 as AmazonSearchClient, SellersClient as AmazonSellersClient, ApartmentsClient, AuthenticationError, BaiduClient, BingClient, MediaClient3 as BingMediaClient, NewsClient2 as BingNewsClient, ReferenceClient8 as BingReferenceClient, SearchClient11 as BingSearchClient, AskClient as ChatGPTAskClient, BrandClient as ChatGPTBrandClient, ChatGPTClient, ReferenceClient14 as ChatGPTReferenceClient, CommunitiesClient, ConflictError, DepopClient, DuckDuckGoClient, MediaClient2 as DuckDuckGoMediaClient, ReferenceClient7 as DuckDuckGoReferenceClient, SearchClient10 as DuckDuckGoSearchClient, CategoriesClient as EbayCategoriesClient, EbayClient, ItemsClient2 as EbayItemsClient, ReferenceClient5 as EbayReferenceClient, SearchClient8 as EbaySearchClient, SellersClient2 as EbaySellersClient, GeoClient, AiModeClient as GoogleAiModeClient, AutocompleteClient as GoogleAutocompleteClient, GoogleClient, FinanceClient as GoogleFinanceClient, FlightsClient as GoogleFlightsClient, HotelsClient as GoogleHotelsClient, ImagesClient as GoogleImagesClient, JobsClient as GoogleJobsClient, LensClient as GoogleLensClient, MapsClient as GoogleMapsClient, NewsClient as GoogleNewsClient, PatentsClient as GooglePatentsClient, ProductsClient as GoogleProductsClient, ScholarClient as GoogleScholarClient, SearchClient2 as GoogleSearchClient, ShoppingClient as GoogleShoppingClient, ShortsClient as GoogleShortsClient, TrendsClient2 as GoogleTrendsClient, VideosClient as GoogleVideosClient, ImmobiliareClient, AudioClient as InstagramAudioClient, InstagramClient, HashtagsClient as InstagramHashtagsClient, LocationsClient as InstagramLocationsClient, MediaClient as InstagramMediaClient, SearchClient4 as InstagramSearchClient, UsersClient4 as InstagramUsersClient, InsufficientCreditsError, AdsClient2 as LeboncoinAdsClient, LeboncoinClient, ReferenceClient11 as LeboncoinReferenceClient, SearchClient14 as LeboncoinSearchClient, SellersClient4 as LeboncoinSellersClient, LinkedInClient, ListsClient, BrokersClient as LoopNetBrokersClient, LoopNetClient, ListingsClient2 as LoopNetListingsClient, ReferenceClient13 as LoopNetReferenceClient, SearchClient16 as LoopNetSearchClient, NotFoundError, RateLimitError, RealtorClient, PropertiesClient as RealtorPropertiesClient, ReferenceClient10 as RealtorReferenceClient, SearchClient13 as RealtorSearchClient, RedditClient, PostsClient as RedditPostsClient, SearchClient3 as RedditSearchClient, SubredditsClient as RedditSubredditsClient, UsersClient3 as RedditUsersClient, RedfinClient, ScrapeBadger, ScrapeBadgerError, ServerError, ShopeeClient, ProductsClient3 as ShopeeProductsClient, ReferenceClient3 as ShopeeReferenceClient, ReviewsClient as ShopeeReviewsClient, SearchClient6 as ShopeeSearchClient, SpacesClient, StreamClient, AdsClient as TikTokAdsClient, TikTokClient, HashtagsClient2 as TikTokHashtagsClient, MusicClient as TikTokMusicClient, ReferenceClient4 as TikTokReferenceClient, SearchClient7 as TikTokSearchClient, TrendingClient as TikTokTrendingClient, UsersClient5 as TikTokUsersClient, VideosClient2 as TikTokVideosClient, TimeoutError, TrendsClient, TweetsClient, TwitterClient, UsersClient, ValidationError, VintedClient, ItemsClient as VintedItemsClient, ReferenceClient as VintedReferenceClient, SearchClient as VintedSearchClient, UsersClient2 as VintedUsersClient, WalmartClient, ProductsClient4 as WalmartProductsClient, ReferenceClient6 as WalmartReferenceClient, SearchClient9 as WalmartSearchClient, SellersClient3 as WalmartSellersClient, StoresClient as WalmartStoresClient, WebClient, WebSocketStreamError, ChannelsClient as YoutubeChannelsClient, YoutubeClient, CommunityClient as YoutubeCommunityClient, MusicClient2 as YoutubeMusicClient, PlaylistsClient as YoutubePlaylistsClient, ReferenceClient9 as YoutubeReferenceClient, SearchClient12 as YoutubeSearchClient, ShortsClient2 as YoutubeShortsClient, TrendingClient2 as YoutubeTrendingClient, VideosClient3 as YoutubeVideosClient, AgentClient as ZillowAgentClient, ZillowClient, PropertiesClient2 as ZillowPropertiesClient, ReferenceClient12 as ZillowReferenceClient, SearchClient15 as ZillowSearchClient, collectAll, verifyWebhookSignature };
|
|
7515
8113
|
//# sourceMappingURL=index.mjs.map
|
|
7516
8114
|
//# sourceMappingURL=index.mjs.map
|