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.js
CHANGED
|
@@ -5705,8 +5705,594 @@ var EbayClient = class {
|
|
|
5705
5705
|
}
|
|
5706
5706
|
};
|
|
5707
5707
|
|
|
5708
|
-
// src/
|
|
5708
|
+
// src/walmart/search.ts
|
|
5709
5709
|
var SearchClient9 = class {
|
|
5710
|
+
constructor(client) {
|
|
5711
|
+
this.client = client;
|
|
5712
|
+
}
|
|
5713
|
+
/**
|
|
5714
|
+
* Search walmart.com.
|
|
5715
|
+
*
|
|
5716
|
+
* @param query - Search keywords, e.g. `"laptop"`.
|
|
5717
|
+
* @param params - Optional page (1-10), sort, price and facet filters.
|
|
5718
|
+
* @returns A page of ~40-60 organic products.
|
|
5719
|
+
*
|
|
5720
|
+
* @remarks
|
|
5721
|
+
* Results dry up after page 10 regardless of `total_results_reported`; bound
|
|
5722
|
+
* a crawl with `max_page`. Sponsored ad tiles are dropped, sponsored
|
|
5723
|
+
* *products* are returned and flagged `is_sponsored`.
|
|
5724
|
+
*/
|
|
5725
|
+
async search(query, params = {}) {
|
|
5726
|
+
return this.client.request("/v1/walmart/search", {
|
|
5727
|
+
params: {
|
|
5728
|
+
query,
|
|
5729
|
+
page: params.page,
|
|
5730
|
+
sort: params.sort,
|
|
5731
|
+
min_price: params.min_price,
|
|
5732
|
+
max_price: params.max_price,
|
|
5733
|
+
facet: params.facet
|
|
5734
|
+
}
|
|
5735
|
+
});
|
|
5736
|
+
}
|
|
5737
|
+
/**
|
|
5738
|
+
* Browse a Walmart category. Same result shape as {@link search}.
|
|
5739
|
+
*
|
|
5740
|
+
* @param path - Browse path, e.g. `"electronics/3944"`, or a `/cp/...` path.
|
|
5741
|
+
* @param params - Optional page (1-11), price and facet filters.
|
|
5742
|
+
*
|
|
5743
|
+
* @remarks
|
|
5744
|
+
* No `sort`: Walmart's browse pages ignore it (verified). Sort on
|
|
5745
|
+
* {@link search} instead.
|
|
5746
|
+
*/
|
|
5747
|
+
async category(path, params = {}) {
|
|
5748
|
+
return this.client.request("/v1/walmart/category", {
|
|
5749
|
+
params: {
|
|
5750
|
+
path,
|
|
5751
|
+
page: params.page,
|
|
5752
|
+
min_price: params.min_price,
|
|
5753
|
+
max_price: params.max_price,
|
|
5754
|
+
facet: params.facet
|
|
5755
|
+
}
|
|
5756
|
+
});
|
|
5757
|
+
}
|
|
5758
|
+
/**
|
|
5759
|
+
* Walmart's current deals, rollbacks and clearance.
|
|
5760
|
+
*
|
|
5761
|
+
* @param params - Optional page (1-11) and price filters.
|
|
5762
|
+
*/
|
|
5763
|
+
async deals(params = {}) {
|
|
5764
|
+
return this.client.request("/v1/walmart/deals", {
|
|
5765
|
+
params: {
|
|
5766
|
+
page: params.page,
|
|
5767
|
+
min_price: params.min_price,
|
|
5768
|
+
max_price: params.max_price
|
|
5769
|
+
}
|
|
5770
|
+
});
|
|
5771
|
+
}
|
|
5772
|
+
/**
|
|
5773
|
+
* Walmart search-box suggestions — the cheapest call in this API.
|
|
5774
|
+
*
|
|
5775
|
+
* @param query - Partial search term, e.g. `"lapt"`.
|
|
5776
|
+
*/
|
|
5777
|
+
async autocomplete(query) {
|
|
5778
|
+
return this.client.request("/v1/walmart/autocomplete", {
|
|
5779
|
+
params: { query }
|
|
5780
|
+
});
|
|
5781
|
+
}
|
|
5782
|
+
};
|
|
5783
|
+
|
|
5784
|
+
// src/walmart/products.ts
|
|
5785
|
+
var ProductsClient4 = class {
|
|
5786
|
+
constructor(client) {
|
|
5787
|
+
this.client = client;
|
|
5788
|
+
}
|
|
5789
|
+
/**
|
|
5790
|
+
* Get full product detail.
|
|
5791
|
+
*
|
|
5792
|
+
* @param itemId - Walmart `usItemId`, e.g. `"5689919121"`.
|
|
5793
|
+
* @throws NotFoundError - If the item doesn't exist.
|
|
5794
|
+
*
|
|
5795
|
+
* @remarks
|
|
5796
|
+
* Only the numeric id is needed — the SEO slug is decorative and ignored by
|
|
5797
|
+
* Walmart's router. Prices and availability are store-specific; the resolved
|
|
5798
|
+
* store is on `location`.
|
|
5799
|
+
*/
|
|
5800
|
+
async get(itemId) {
|
|
5801
|
+
return this.client.request(`/v1/walmart/products/${itemId}`);
|
|
5802
|
+
}
|
|
5803
|
+
/**
|
|
5804
|
+
* Get paginated customer reviews with the full star histogram.
|
|
5805
|
+
*
|
|
5806
|
+
* @param itemId - Walmart `usItemId`.
|
|
5807
|
+
* @param params - Optional page (1-100) and sort.
|
|
5808
|
+
* @returns Reviews plus the rating breakdown, aspects, and the most-helpful
|
|
5809
|
+
* positive and negative reviews.
|
|
5810
|
+
*
|
|
5811
|
+
* @remarks 10 reviews per page — Walmart's page size, not adjustable.
|
|
5812
|
+
*/
|
|
5813
|
+
async reviews(itemId, params = {}) {
|
|
5814
|
+
return this.client.request(
|
|
5815
|
+
`/v1/walmart/products/${itemId}/reviews`,
|
|
5816
|
+
{ params: { page: params.page, sort: params.sort } }
|
|
5817
|
+
);
|
|
5818
|
+
}
|
|
5819
|
+
};
|
|
5820
|
+
|
|
5821
|
+
// src/walmart/sellers.ts
|
|
5822
|
+
var SellersClient3 = class {
|
|
5823
|
+
constructor(client) {
|
|
5824
|
+
this.client = client;
|
|
5825
|
+
}
|
|
5826
|
+
/**
|
|
5827
|
+
* Get a marketplace seller's profile — contact details, address, rating,
|
|
5828
|
+
* policies.
|
|
5829
|
+
*
|
|
5830
|
+
* @param sellerId - Numeric catalog seller id, e.g. `"101040442"`. This is
|
|
5831
|
+
* the `seller.catalog_seller_id` on a product — NOT the 32-char hex
|
|
5832
|
+
* `seller_id`, which 404s as a storefront URL.
|
|
5833
|
+
*
|
|
5834
|
+
* @remarks
|
|
5835
|
+
* No page parameter and no product list: adding `?page=` makes Walmart's own
|
|
5836
|
+
* SSR throw. Use {@link products} for the catalogue.
|
|
5837
|
+
*/
|
|
5838
|
+
async get(sellerId) {
|
|
5839
|
+
return this.client.request(`/v1/walmart/sellers/${sellerId}`);
|
|
5840
|
+
}
|
|
5841
|
+
/**
|
|
5842
|
+
* List a marketplace seller's catalogue.
|
|
5843
|
+
*
|
|
5844
|
+
* @param sellerId - Numeric catalog seller id.
|
|
5845
|
+
* @param query - Search term scoping the catalogue. REQUIRED — this goes
|
|
5846
|
+
* through search with a `retailer_id` facet, and the facet alone returns
|
|
5847
|
+
* zero results.
|
|
5848
|
+
* @param params - Optional page (1-10) and sort.
|
|
5849
|
+
*/
|
|
5850
|
+
async products(sellerId, query, params = {}) {
|
|
5851
|
+
return this.client.request(
|
|
5852
|
+
`/v1/walmart/sellers/${sellerId}/products`,
|
|
5853
|
+
{ params: { query, page: params.page, sort: params.sort } }
|
|
5854
|
+
);
|
|
5855
|
+
}
|
|
5856
|
+
};
|
|
5857
|
+
|
|
5858
|
+
// src/walmart/stores.ts
|
|
5859
|
+
var StoresClient = class {
|
|
5860
|
+
constructor(client) {
|
|
5861
|
+
this.client = client;
|
|
5862
|
+
}
|
|
5863
|
+
/**
|
|
5864
|
+
* Get store detail plus every store around it.
|
|
5865
|
+
*
|
|
5866
|
+
* @param storeId - Walmart store number, e.g. `"100"`.
|
|
5867
|
+
* @returns The store's address, geo, phone, opening hours and per-department
|
|
5868
|
+
* services (each with its own hours and phone), plus ~30 nearby stores.
|
|
5869
|
+
*/
|
|
5870
|
+
async get(storeId) {
|
|
5871
|
+
return this.client.request(`/v1/walmart/stores/${storeId}`);
|
|
5872
|
+
}
|
|
5873
|
+
};
|
|
5874
|
+
|
|
5875
|
+
// src/walmart/reference.ts
|
|
5876
|
+
var ReferenceClient6 = class {
|
|
5877
|
+
constructor(client) {
|
|
5878
|
+
this.client = client;
|
|
5879
|
+
}
|
|
5880
|
+
/**
|
|
5881
|
+
* Get the supported Walmart markets.
|
|
5882
|
+
*
|
|
5883
|
+
* @remarks
|
|
5884
|
+
* Only walmart.com (US) is supported — walmart.ca and walmart.com.mx run on
|
|
5885
|
+
* different platforms with different payload shapes, so they are not claimed
|
|
5886
|
+
* here rather than shipped broken.
|
|
5887
|
+
*/
|
|
5888
|
+
async markets() {
|
|
5889
|
+
return this.client.request("/v1/walmart/markets");
|
|
5890
|
+
}
|
|
5891
|
+
/**
|
|
5892
|
+
* Check the health of the Walmart scraper service.
|
|
5893
|
+
*
|
|
5894
|
+
* @returns The raw health payload from the scraper service.
|
|
5895
|
+
*/
|
|
5896
|
+
async health() {
|
|
5897
|
+
return this.client.request("/v1/walmart/health");
|
|
5898
|
+
}
|
|
5899
|
+
};
|
|
5900
|
+
|
|
5901
|
+
// src/walmart/client.ts
|
|
5902
|
+
var WalmartClient = class {
|
|
5903
|
+
/** Client for search, category browse, deals and autocomplete */
|
|
5904
|
+
search;
|
|
5905
|
+
/** Client for product detail and reviews */
|
|
5906
|
+
products;
|
|
5907
|
+
/** Client for marketplace seller profile and catalogue */
|
|
5908
|
+
sellers;
|
|
5909
|
+
/** Client for store detail and nearby stores */
|
|
5910
|
+
stores;
|
|
5911
|
+
/** Client for reference data (markets) and service health */
|
|
5912
|
+
reference;
|
|
5913
|
+
/**
|
|
5914
|
+
* Create a new Walmart client.
|
|
5915
|
+
*
|
|
5916
|
+
* @param client - The base HTTP client for making requests.
|
|
5917
|
+
*/
|
|
5918
|
+
constructor(client) {
|
|
5919
|
+
this.search = new SearchClient9(client);
|
|
5920
|
+
this.products = new ProductsClient4(client);
|
|
5921
|
+
this.sellers = new SellersClient3(client);
|
|
5922
|
+
this.stores = new StoresClient(client);
|
|
5923
|
+
this.reference = new ReferenceClient6(client);
|
|
5924
|
+
}
|
|
5925
|
+
};
|
|
5926
|
+
|
|
5927
|
+
// src/duckduckgo/search.ts
|
|
5928
|
+
var SearchClient10 = class {
|
|
5929
|
+
constructor(client) {
|
|
5930
|
+
this.client = client;
|
|
5931
|
+
}
|
|
5932
|
+
/**
|
|
5933
|
+
* Search duckduckgo.com.
|
|
5934
|
+
*
|
|
5935
|
+
* @param query - Search keywords, e.g. `"privacy"`.
|
|
5936
|
+
* @param params - Optional region, safesearch, timelimit and page.
|
|
5937
|
+
* @returns A page of web results plus the optional abstract.
|
|
5938
|
+
*/
|
|
5939
|
+
async search(query, params = {}) {
|
|
5940
|
+
return this.client.request("/v1/duckduckgo/search", {
|
|
5941
|
+
params: {
|
|
5942
|
+
query,
|
|
5943
|
+
region: params.region,
|
|
5944
|
+
safesearch: params.safesearch,
|
|
5945
|
+
timelimit: params.timelimit,
|
|
5946
|
+
page: params.page
|
|
5947
|
+
}
|
|
5948
|
+
});
|
|
5949
|
+
}
|
|
5950
|
+
};
|
|
5951
|
+
|
|
5952
|
+
// src/duckduckgo/media.ts
|
|
5953
|
+
var MediaClient2 = class {
|
|
5954
|
+
constructor(client) {
|
|
5955
|
+
this.client = client;
|
|
5956
|
+
}
|
|
5957
|
+
/**
|
|
5958
|
+
* Search DuckDuckGo Images.
|
|
5959
|
+
*
|
|
5960
|
+
* @param query - Search keywords.
|
|
5961
|
+
* @param params - Optional region, safesearch, page and image filters
|
|
5962
|
+
* (size, color, image_type, layout, license).
|
|
5963
|
+
*/
|
|
5964
|
+
async images(query, params = {}) {
|
|
5965
|
+
return this.client.request("/v1/duckduckgo/images", {
|
|
5966
|
+
params: {
|
|
5967
|
+
query,
|
|
5968
|
+
region: params.region,
|
|
5969
|
+
safesearch: params.safesearch,
|
|
5970
|
+
page: params.page,
|
|
5971
|
+
size: params.size,
|
|
5972
|
+
color: params.color,
|
|
5973
|
+
image_type: params.image_type,
|
|
5974
|
+
layout: params.layout,
|
|
5975
|
+
license: params.license
|
|
5976
|
+
}
|
|
5977
|
+
});
|
|
5978
|
+
}
|
|
5979
|
+
/**
|
|
5980
|
+
* Search DuckDuckGo News.
|
|
5981
|
+
*
|
|
5982
|
+
* @param query - Search keywords.
|
|
5983
|
+
* @param params - Optional region, safesearch, timelimit and page.
|
|
5984
|
+
*/
|
|
5985
|
+
async news(query, params = {}) {
|
|
5986
|
+
return this.client.request("/v1/duckduckgo/news", {
|
|
5987
|
+
params: {
|
|
5988
|
+
query,
|
|
5989
|
+
region: params.region,
|
|
5990
|
+
safesearch: params.safesearch,
|
|
5991
|
+
timelimit: params.timelimit,
|
|
5992
|
+
page: params.page
|
|
5993
|
+
}
|
|
5994
|
+
});
|
|
5995
|
+
}
|
|
5996
|
+
/**
|
|
5997
|
+
* Search DuckDuckGo Videos.
|
|
5998
|
+
*
|
|
5999
|
+
* @param query - Search keywords.
|
|
6000
|
+
* @param params - Optional region, safesearch, page, duration and resolution.
|
|
6001
|
+
*/
|
|
6002
|
+
async videos(query, params = {}) {
|
|
6003
|
+
return this.client.request("/v1/duckduckgo/videos", {
|
|
6004
|
+
params: {
|
|
6005
|
+
query,
|
|
6006
|
+
region: params.region,
|
|
6007
|
+
safesearch: params.safesearch,
|
|
6008
|
+
page: params.page,
|
|
6009
|
+
duration: params.duration,
|
|
6010
|
+
resolution: params.resolution
|
|
6011
|
+
}
|
|
6012
|
+
});
|
|
6013
|
+
}
|
|
6014
|
+
};
|
|
6015
|
+
|
|
6016
|
+
// src/duckduckgo/reference.ts
|
|
6017
|
+
var ReferenceClient7 = class {
|
|
6018
|
+
constructor(client) {
|
|
6019
|
+
this.client = client;
|
|
6020
|
+
}
|
|
6021
|
+
/**
|
|
6022
|
+
* Search-box suggestions for a partial query.
|
|
6023
|
+
*
|
|
6024
|
+
* @param query - Partial search term, e.g. `"weath"`.
|
|
6025
|
+
* @param params - Optional region.
|
|
6026
|
+
*/
|
|
6027
|
+
async autocomplete(query, params = {}) {
|
|
6028
|
+
return this.client.request("/v1/duckduckgo/autocomplete", {
|
|
6029
|
+
params: {
|
|
6030
|
+
query,
|
|
6031
|
+
region: params.region
|
|
6032
|
+
}
|
|
6033
|
+
});
|
|
6034
|
+
}
|
|
6035
|
+
/**
|
|
6036
|
+
* DuckDuckGo Instant Answer (zero-click info) for a query.
|
|
6037
|
+
*
|
|
6038
|
+
* @param query - The query, e.g. `"python"`.
|
|
6039
|
+
*/
|
|
6040
|
+
async instant(query) {
|
|
6041
|
+
return this.client.request("/v1/duckduckgo/instant", {
|
|
6042
|
+
params: { query }
|
|
6043
|
+
});
|
|
6044
|
+
}
|
|
6045
|
+
/**
|
|
6046
|
+
* Get the supported DuckDuckGo search regions.
|
|
6047
|
+
*/
|
|
6048
|
+
async regions() {
|
|
6049
|
+
return this.client.request("/v1/duckduckgo/regions");
|
|
6050
|
+
}
|
|
6051
|
+
};
|
|
6052
|
+
|
|
6053
|
+
// src/duckduckgo/client.ts
|
|
6054
|
+
var DuckDuckGoClient = class {
|
|
6055
|
+
/** Client for web search with the optional Instant-Answer abstract */
|
|
6056
|
+
search;
|
|
6057
|
+
/** Client for image, news and video search */
|
|
6058
|
+
media;
|
|
6059
|
+
/** Client for autocomplete, instant answers and supported regions */
|
|
6060
|
+
reference;
|
|
6061
|
+
/**
|
|
6062
|
+
* Create a new DuckDuckGo client.
|
|
6063
|
+
*
|
|
6064
|
+
* @param client - The base HTTP client for making requests.
|
|
6065
|
+
*/
|
|
6066
|
+
constructor(client) {
|
|
6067
|
+
this.search = new SearchClient10(client);
|
|
6068
|
+
this.media = new MediaClient2(client);
|
|
6069
|
+
this.reference = new ReferenceClient7(client);
|
|
6070
|
+
}
|
|
6071
|
+
};
|
|
6072
|
+
|
|
6073
|
+
// src/bing/search.ts
|
|
6074
|
+
var SearchClient11 = class {
|
|
6075
|
+
constructor(client) {
|
|
6076
|
+
this.client = client;
|
|
6077
|
+
}
|
|
6078
|
+
/**
|
|
6079
|
+
* Search bing.com — the web SERP.
|
|
6080
|
+
*
|
|
6081
|
+
* @param query - Search keywords, e.g. `"coffee machine"`.
|
|
6082
|
+
* @param params - Optional market, count, offset and safe-search filter.
|
|
6083
|
+
* @returns A page of organic results, ads and related searches.
|
|
6084
|
+
*/
|
|
6085
|
+
async search(query, params = {}) {
|
|
6086
|
+
return this.client.request("/v1/bing/search", {
|
|
6087
|
+
params: {
|
|
6088
|
+
query,
|
|
6089
|
+
market: params.market,
|
|
6090
|
+
count: params.count,
|
|
6091
|
+
offset: params.offset,
|
|
6092
|
+
safe_search: params.safe_search
|
|
6093
|
+
}
|
|
6094
|
+
});
|
|
6095
|
+
}
|
|
6096
|
+
/**
|
|
6097
|
+
* Bing search-box suggestions — the cheapest call in this API.
|
|
6098
|
+
*
|
|
6099
|
+
* @param query - Partial search term, e.g. `"coff"`.
|
|
6100
|
+
* @param params - Optional market.
|
|
6101
|
+
*/
|
|
6102
|
+
async autocomplete(query, params = {}) {
|
|
6103
|
+
return this.client.request("/v1/bing/autocomplete", {
|
|
6104
|
+
params: {
|
|
6105
|
+
query,
|
|
6106
|
+
market: params.market
|
|
6107
|
+
}
|
|
6108
|
+
});
|
|
6109
|
+
}
|
|
6110
|
+
};
|
|
6111
|
+
|
|
6112
|
+
// src/bing/media.ts
|
|
6113
|
+
var MediaClient3 = class {
|
|
6114
|
+
constructor(client) {
|
|
6115
|
+
this.client = client;
|
|
6116
|
+
}
|
|
6117
|
+
/**
|
|
6118
|
+
* Search Bing images.
|
|
6119
|
+
*
|
|
6120
|
+
* @param query - Search keywords, e.g. `"cats"`.
|
|
6121
|
+
* @param params - Optional market, count and safe-search filter.
|
|
6122
|
+
* @returns Full-size image URLs, thumbnails, pixel dimensions and the
|
|
6123
|
+
* source page each image came from.
|
|
6124
|
+
*/
|
|
6125
|
+
async images(query, params = {}) {
|
|
6126
|
+
return this.client.request("/v1/bing/images", {
|
|
6127
|
+
params: {
|
|
6128
|
+
query,
|
|
6129
|
+
market: params.market,
|
|
6130
|
+
count: params.count,
|
|
6131
|
+
safe_search: params.safe_search
|
|
6132
|
+
}
|
|
6133
|
+
});
|
|
6134
|
+
}
|
|
6135
|
+
/**
|
|
6136
|
+
* Search Bing videos.
|
|
6137
|
+
*
|
|
6138
|
+
* @param query - Search keywords, e.g. `"cats"`.
|
|
6139
|
+
* @param params - Optional market, count and safe-search filter.
|
|
6140
|
+
* @returns Video URLs, thumbnails, duration, publisher and view counts.
|
|
6141
|
+
*/
|
|
6142
|
+
async videos(query, params = {}) {
|
|
6143
|
+
return this.client.request("/v1/bing/videos", {
|
|
6144
|
+
params: {
|
|
6145
|
+
query,
|
|
6146
|
+
market: params.market,
|
|
6147
|
+
count: params.count,
|
|
6148
|
+
safe_search: params.safe_search
|
|
6149
|
+
}
|
|
6150
|
+
});
|
|
6151
|
+
}
|
|
6152
|
+
};
|
|
6153
|
+
|
|
6154
|
+
// src/bing/news.ts
|
|
6155
|
+
var NewsClient2 = class {
|
|
6156
|
+
constructor(client) {
|
|
6157
|
+
this.client = client;
|
|
6158
|
+
}
|
|
6159
|
+
/**
|
|
6160
|
+
* Search the Bing news vertical.
|
|
6161
|
+
*
|
|
6162
|
+
* @param query - Search keywords, e.g. `"artificial intelligence"`.
|
|
6163
|
+
* @param params - Optional market and freshness (`"day"`, `"week"`, `"month"`).
|
|
6164
|
+
* @returns Articles carrying publisher, publish dates and real URLs.
|
|
6165
|
+
*/
|
|
6166
|
+
async news(query, params = {}) {
|
|
6167
|
+
return this.client.request("/v1/bing/news", {
|
|
6168
|
+
params: {
|
|
6169
|
+
query,
|
|
6170
|
+
market: params.market,
|
|
6171
|
+
freshness: params.freshness
|
|
6172
|
+
}
|
|
6173
|
+
});
|
|
6174
|
+
}
|
|
6175
|
+
};
|
|
6176
|
+
|
|
6177
|
+
// src/bing/reference.ts
|
|
6178
|
+
var ReferenceClient8 = class {
|
|
6179
|
+
constructor(client) {
|
|
6180
|
+
this.client = client;
|
|
6181
|
+
}
|
|
6182
|
+
/**
|
|
6183
|
+
* Get the supported Bing markets.
|
|
6184
|
+
*
|
|
6185
|
+
* @returns Every Bing market code, name and country.
|
|
6186
|
+
*/
|
|
6187
|
+
async markets() {
|
|
6188
|
+
return this.client.request("/v1/bing/markets");
|
|
6189
|
+
}
|
|
6190
|
+
};
|
|
6191
|
+
|
|
6192
|
+
// src/bing/client.ts
|
|
6193
|
+
var BingClient = class {
|
|
6194
|
+
/** Client for web search and search-box autocomplete */
|
|
6195
|
+
search;
|
|
6196
|
+
/** Client for image search and video search */
|
|
6197
|
+
media;
|
|
6198
|
+
/** Client for the news vertical */
|
|
6199
|
+
news;
|
|
6200
|
+
/** Client for reference data (markets) */
|
|
6201
|
+
reference;
|
|
6202
|
+
/**
|
|
6203
|
+
* Create a new Bing client.
|
|
6204
|
+
*
|
|
6205
|
+
* @param client - The base HTTP client for making requests.
|
|
6206
|
+
*/
|
|
6207
|
+
constructor(client) {
|
|
6208
|
+
this.search = new SearchClient11(client);
|
|
6209
|
+
this.media = new MediaClient3(client);
|
|
6210
|
+
this.news = new NewsClient2(client);
|
|
6211
|
+
this.reference = new ReferenceClient8(client);
|
|
6212
|
+
}
|
|
6213
|
+
};
|
|
6214
|
+
|
|
6215
|
+
// src/baidu/client.ts
|
|
6216
|
+
var BaiduClient = class {
|
|
6217
|
+
client;
|
|
6218
|
+
constructor(client) {
|
|
6219
|
+
this.client = client;
|
|
6220
|
+
}
|
|
6221
|
+
/**
|
|
6222
|
+
* Search baidu.com — the web SERP.
|
|
6223
|
+
*
|
|
6224
|
+
* Costs 5 credits.
|
|
6225
|
+
*
|
|
6226
|
+
* @param query - Search keywords, e.g. `"咖啡机"` or `"coffee machine"` (required).
|
|
6227
|
+
* @param options - Optional parameters (page, num, language, timeFrom, timeTo).
|
|
6228
|
+
* @returns Search response with organic results and Baidu's related searches.
|
|
6229
|
+
* @throws AuthenticationError - If the API key is invalid.
|
|
6230
|
+
* @throws ValidationError - If the parameters are invalid.
|
|
6231
|
+
*/
|
|
6232
|
+
async search(query, options = {}) {
|
|
6233
|
+
return this.client.request("/v1/baidu/search", {
|
|
6234
|
+
params: {
|
|
6235
|
+
query,
|
|
6236
|
+
page: options.page,
|
|
6237
|
+
num: options.num,
|
|
6238
|
+
language: options.language,
|
|
6239
|
+
time_from: options.timeFrom,
|
|
6240
|
+
time_to: options.timeTo
|
|
6241
|
+
}
|
|
6242
|
+
});
|
|
6243
|
+
}
|
|
6244
|
+
/**
|
|
6245
|
+
* Search the Baidu news vertical.
|
|
6246
|
+
*
|
|
6247
|
+
* Costs 5 credits.
|
|
6248
|
+
*
|
|
6249
|
+
* @param query - Search keywords, e.g. `"人工智能"` (required).
|
|
6250
|
+
* @param options - Optional parameters (page, sort).
|
|
6251
|
+
* @returns News response with articles carrying publisher, date and real URLs.
|
|
6252
|
+
* @throws AuthenticationError - If the API key is invalid.
|
|
6253
|
+
* @throws ValidationError - If the parameters are invalid.
|
|
6254
|
+
*/
|
|
6255
|
+
async news(query, options = {}) {
|
|
6256
|
+
return this.client.request("/v1/baidu/news", {
|
|
6257
|
+
params: { query, page: options.page, sort: options.sort }
|
|
6258
|
+
});
|
|
6259
|
+
}
|
|
6260
|
+
/**
|
|
6261
|
+
* Search Baidu images.
|
|
6262
|
+
*
|
|
6263
|
+
* Costs 5 credits.
|
|
6264
|
+
*
|
|
6265
|
+
* @param query - Search keywords, e.g. `"猫"` (required).
|
|
6266
|
+
* @param options - Optional parameters (page). Baidu serves 30 images per page.
|
|
6267
|
+
* @returns Images response with full-size image URLs, Baidu-hosted thumbnail
|
|
6268
|
+
* copies, pixel dimensions and the source page each image came from.
|
|
6269
|
+
* @throws AuthenticationError - If the API key is invalid.
|
|
6270
|
+
* @throws ValidationError - If the parameters are invalid.
|
|
6271
|
+
*/
|
|
6272
|
+
async images(query, options = {}) {
|
|
6273
|
+
return this.client.request("/v1/baidu/images", {
|
|
6274
|
+
params: { query, page: options.page }
|
|
6275
|
+
});
|
|
6276
|
+
}
|
|
6277
|
+
/**
|
|
6278
|
+
* Baidu search-box suggestions — the cheapest call in this API.
|
|
6279
|
+
*
|
|
6280
|
+
* Costs 1 credit.
|
|
6281
|
+
*
|
|
6282
|
+
* @param query - Partial search term, e.g. `"咖啡"` or `"coff"` (required).
|
|
6283
|
+
* @returns Autocomplete response with Baidu's suggestions for the term.
|
|
6284
|
+
* @throws AuthenticationError - If the API key is invalid.
|
|
6285
|
+
* @throws ValidationError - If the parameters are invalid.
|
|
6286
|
+
*/
|
|
6287
|
+
async autocomplete(query) {
|
|
6288
|
+
return this.client.request("/v1/baidu/autocomplete", {
|
|
6289
|
+
params: { query }
|
|
6290
|
+
});
|
|
6291
|
+
}
|
|
6292
|
+
};
|
|
6293
|
+
|
|
6294
|
+
// src/youtube/search.ts
|
|
6295
|
+
var SearchClient12 = class {
|
|
5710
6296
|
client;
|
|
5711
6297
|
constructor(client) {
|
|
5712
6298
|
this.client = client;
|
|
@@ -6231,7 +6817,7 @@ var MusicClient2 = class {
|
|
|
6231
6817
|
};
|
|
6232
6818
|
|
|
6233
6819
|
// src/youtube/reference.ts
|
|
6234
|
-
var
|
|
6820
|
+
var ReferenceClient9 = class {
|
|
6235
6821
|
client;
|
|
6236
6822
|
constructor(client) {
|
|
6237
6823
|
this.client = client;
|
|
@@ -6299,7 +6885,7 @@ var YoutubeClient = class {
|
|
|
6299
6885
|
* @param client - The base HTTP client for making requests.
|
|
6300
6886
|
*/
|
|
6301
6887
|
constructor(client) {
|
|
6302
|
-
this.search = new
|
|
6888
|
+
this.search = new SearchClient12(client);
|
|
6303
6889
|
this.videos = new VideosClient3(client);
|
|
6304
6890
|
this.channels = new ChannelsClient(client);
|
|
6305
6891
|
this.playlists = new PlaylistsClient(client);
|
|
@@ -6307,12 +6893,12 @@ var YoutubeClient = class {
|
|
|
6307
6893
|
this.shorts = new ShortsClient2(client);
|
|
6308
6894
|
this.trending = new TrendingClient2(client);
|
|
6309
6895
|
this.music = new MusicClient2(client);
|
|
6310
|
-
this.reference = new
|
|
6896
|
+
this.reference = new ReferenceClient9(client);
|
|
6311
6897
|
}
|
|
6312
6898
|
};
|
|
6313
6899
|
|
|
6314
6900
|
// src/realtor/search.ts
|
|
6315
|
-
var
|
|
6901
|
+
var SearchClient13 = class {
|
|
6316
6902
|
client;
|
|
6317
6903
|
constructor(client) {
|
|
6318
6904
|
this.client = client;
|
|
@@ -6386,7 +6972,7 @@ var PropertiesClient = class {
|
|
|
6386
6972
|
};
|
|
6387
6973
|
|
|
6388
6974
|
// src/realtor/reference.ts
|
|
6389
|
-
var
|
|
6975
|
+
var ReferenceClient10 = class {
|
|
6390
6976
|
client;
|
|
6391
6977
|
constructor(client) {
|
|
6392
6978
|
this.client = client;
|
|
@@ -6415,14 +7001,14 @@ var RealtorClient = class {
|
|
|
6415
7001
|
* @param client - The base HTTP client for making requests.
|
|
6416
7002
|
*/
|
|
6417
7003
|
constructor(client) {
|
|
6418
|
-
this.search = new
|
|
7004
|
+
this.search = new SearchClient13(client);
|
|
6419
7005
|
this.properties = new PropertiesClient(client);
|
|
6420
|
-
this.reference = new
|
|
7006
|
+
this.reference = new ReferenceClient10(client);
|
|
6421
7007
|
}
|
|
6422
7008
|
};
|
|
6423
7009
|
|
|
6424
7010
|
// src/leboncoin/search.ts
|
|
6425
|
-
var
|
|
7011
|
+
var SearchClient14 = class {
|
|
6426
7012
|
client;
|
|
6427
7013
|
constructor(client) {
|
|
6428
7014
|
this.client = client;
|
|
@@ -6491,7 +7077,7 @@ var AdsClient2 = class {
|
|
|
6491
7077
|
};
|
|
6492
7078
|
|
|
6493
7079
|
// src/leboncoin/sellers.ts
|
|
6494
|
-
var
|
|
7080
|
+
var SellersClient4 = class {
|
|
6495
7081
|
client;
|
|
6496
7082
|
constructor(client) {
|
|
6497
7083
|
this.client = client;
|
|
@@ -6524,7 +7110,7 @@ var SellersClient3 = class {
|
|
|
6524
7110
|
};
|
|
6525
7111
|
|
|
6526
7112
|
// src/leboncoin/reference.ts
|
|
6527
|
-
var
|
|
7113
|
+
var ReferenceClient11 = class {
|
|
6528
7114
|
client;
|
|
6529
7115
|
constructor(client) {
|
|
6530
7116
|
this.client = client;
|
|
@@ -6595,15 +7181,15 @@ var LeboncoinClient = class {
|
|
|
6595
7181
|
* @param client - The base HTTP client for making requests.
|
|
6596
7182
|
*/
|
|
6597
7183
|
constructor(client) {
|
|
6598
|
-
this.search = new
|
|
7184
|
+
this.search = new SearchClient14(client);
|
|
6599
7185
|
this.ads = new AdsClient2(client);
|
|
6600
|
-
this.sellers = new
|
|
6601
|
-
this.reference = new
|
|
7186
|
+
this.sellers = new SellersClient4(client);
|
|
7187
|
+
this.reference = new ReferenceClient11(client);
|
|
6602
7188
|
}
|
|
6603
7189
|
};
|
|
6604
7190
|
|
|
6605
7191
|
// src/zillow/search.ts
|
|
6606
|
-
var
|
|
7192
|
+
var SearchClient15 = class {
|
|
6607
7193
|
client;
|
|
6608
7194
|
constructor(client) {
|
|
6609
7195
|
this.client = client;
|
|
@@ -6707,7 +7293,7 @@ var AgentClient = class {
|
|
|
6707
7293
|
};
|
|
6708
7294
|
|
|
6709
7295
|
// src/zillow/reference.ts
|
|
6710
|
-
var
|
|
7296
|
+
var ReferenceClient12 = class {
|
|
6711
7297
|
client;
|
|
6712
7298
|
constructor(client) {
|
|
6713
7299
|
this.client = client;
|
|
@@ -6738,10 +7324,10 @@ var ZillowClient = class {
|
|
|
6738
7324
|
* @param client - The base HTTP client for making requests.
|
|
6739
7325
|
*/
|
|
6740
7326
|
constructor(client) {
|
|
6741
|
-
this.search = new
|
|
7327
|
+
this.search = new SearchClient15(client);
|
|
6742
7328
|
this.properties = new PropertiesClient2(client);
|
|
6743
7329
|
this.agent = new AgentClient(client);
|
|
6744
|
-
this.reference = new
|
|
7330
|
+
this.reference = new ReferenceClient12(client);
|
|
6745
7331
|
}
|
|
6746
7332
|
};
|
|
6747
7333
|
|
|
@@ -6876,7 +7462,7 @@ var ImmobiliareClient = class {
|
|
|
6876
7462
|
};
|
|
6877
7463
|
|
|
6878
7464
|
// src/loopnet/search.ts
|
|
6879
|
-
var
|
|
7465
|
+
var SearchClient16 = class {
|
|
6880
7466
|
client;
|
|
6881
7467
|
constructor(client) {
|
|
6882
7468
|
this.client = client;
|
|
@@ -6957,7 +7543,7 @@ var BrokersClient = class {
|
|
|
6957
7543
|
};
|
|
6958
7544
|
|
|
6959
7545
|
// src/loopnet/reference.ts
|
|
6960
|
-
var
|
|
7546
|
+
var ReferenceClient13 = class {
|
|
6961
7547
|
client;
|
|
6962
7548
|
constructor(client) {
|
|
6963
7549
|
this.client = client;
|
|
@@ -7000,10 +7586,10 @@ var LoopNetClient = class {
|
|
|
7000
7586
|
* @param client - The base HTTP client for making requests.
|
|
7001
7587
|
*/
|
|
7002
7588
|
constructor(client) {
|
|
7003
|
-
this.search = new
|
|
7589
|
+
this.search = new SearchClient16(client);
|
|
7004
7590
|
this.listings = new ListingsClient2(client);
|
|
7005
7591
|
this.brokers = new BrokersClient(client);
|
|
7006
|
-
this.reference = new
|
|
7592
|
+
this.reference = new ReferenceClient13(client);
|
|
7007
7593
|
}
|
|
7008
7594
|
};
|
|
7009
7595
|
|
|
@@ -7364,7 +7950,7 @@ var BrandClient = class {
|
|
|
7364
7950
|
};
|
|
7365
7951
|
|
|
7366
7952
|
// src/chatgpt/reference.ts
|
|
7367
|
-
var
|
|
7953
|
+
var ReferenceClient14 = class {
|
|
7368
7954
|
client;
|
|
7369
7955
|
constructor(client) {
|
|
7370
7956
|
this.client = client;
|
|
@@ -7410,7 +7996,7 @@ var ChatGPTClient = class {
|
|
|
7410
7996
|
constructor(client) {
|
|
7411
7997
|
this.ask = new AskClient(client);
|
|
7412
7998
|
this.brand = new BrandClient(client);
|
|
7413
|
-
this.reference = new
|
|
7999
|
+
this.reference = new ReferenceClient14(client);
|
|
7414
8000
|
}
|
|
7415
8001
|
};
|
|
7416
8002
|
|
|
@@ -7441,6 +8027,14 @@ var ScrapeBadger = class {
|
|
|
7441
8027
|
tiktok;
|
|
7442
8028
|
/** eBay scraper API client — 12 endpoints across 18 markets */
|
|
7443
8029
|
ebay;
|
|
8030
|
+
/** Walmart scraper API client — 11 endpoints (walmart.com, US-only) */
|
|
8031
|
+
walmart;
|
|
8032
|
+
/** DuckDuckGo scraper API client — search, images, news, videos, autocomplete, instant, regions */
|
|
8033
|
+
duckduckgo;
|
|
8034
|
+
/** Bing scraper API client — 6 endpoints (search, images, videos, news, autocomplete, markets) */
|
|
8035
|
+
bing;
|
|
8036
|
+
/** Baidu scraper API client — search, news, images, autocomplete (baidu.com, China's #1 search engine) */
|
|
8037
|
+
baidu;
|
|
7444
8038
|
/** YouTube scraper API client — 39 endpoints */
|
|
7445
8039
|
youtube;
|
|
7446
8040
|
/** Realtor scraper API client — 4 endpoints across 2 markets (us, ca) */
|
|
@@ -7505,6 +8099,10 @@ var ScrapeBadger = class {
|
|
|
7505
8099
|
this.shopee = new ShopeeClient(this.baseClient);
|
|
7506
8100
|
this.tiktok = new TikTokClient(this.baseClient);
|
|
7507
8101
|
this.ebay = new EbayClient(this.baseClient);
|
|
8102
|
+
this.walmart = new WalmartClient(this.baseClient);
|
|
8103
|
+
this.duckduckgo = new DuckDuckGoClient(this.baseClient);
|
|
8104
|
+
this.bing = new BingClient(this.baseClient);
|
|
8105
|
+
this.baidu = new BaiduClient(this.baseClient);
|
|
7508
8106
|
this.youtube = new YoutubeClient(this.baseClient);
|
|
7509
8107
|
this.realtor = new RealtorClient(this.baseClient);
|
|
7510
8108
|
this.leboncoin = new LeboncoinClient(this.baseClient);
|
|
@@ -7526,13 +8124,23 @@ exports.AmazonSearchClient = SearchClient5;
|
|
|
7526
8124
|
exports.AmazonSellersClient = SellersClient;
|
|
7527
8125
|
exports.ApartmentsClient = ApartmentsClient;
|
|
7528
8126
|
exports.AuthenticationError = AuthenticationError;
|
|
8127
|
+
exports.BaiduClient = BaiduClient;
|
|
8128
|
+
exports.BingClient = BingClient;
|
|
8129
|
+
exports.BingMediaClient = MediaClient3;
|
|
8130
|
+
exports.BingNewsClient = NewsClient2;
|
|
8131
|
+
exports.BingReferenceClient = ReferenceClient8;
|
|
8132
|
+
exports.BingSearchClient = SearchClient11;
|
|
7529
8133
|
exports.ChatGPTAskClient = AskClient;
|
|
7530
8134
|
exports.ChatGPTBrandClient = BrandClient;
|
|
7531
8135
|
exports.ChatGPTClient = ChatGPTClient;
|
|
7532
|
-
exports.ChatGPTReferenceClient =
|
|
8136
|
+
exports.ChatGPTReferenceClient = ReferenceClient14;
|
|
7533
8137
|
exports.CommunitiesClient = CommunitiesClient;
|
|
7534
8138
|
exports.ConflictError = ConflictError;
|
|
7535
8139
|
exports.DepopClient = DepopClient;
|
|
8140
|
+
exports.DuckDuckGoClient = DuckDuckGoClient;
|
|
8141
|
+
exports.DuckDuckGoMediaClient = MediaClient2;
|
|
8142
|
+
exports.DuckDuckGoReferenceClient = ReferenceClient7;
|
|
8143
|
+
exports.DuckDuckGoSearchClient = SearchClient10;
|
|
7536
8144
|
exports.EbayCategoriesClient = CategoriesClient;
|
|
7537
8145
|
exports.EbayClient = EbayClient;
|
|
7538
8146
|
exports.EbayItemsClient = ItemsClient2;
|
|
@@ -7570,22 +8178,22 @@ exports.InstagramUsersClient = UsersClient4;
|
|
|
7570
8178
|
exports.InsufficientCreditsError = InsufficientCreditsError;
|
|
7571
8179
|
exports.LeboncoinAdsClient = AdsClient2;
|
|
7572
8180
|
exports.LeboncoinClient = LeboncoinClient;
|
|
7573
|
-
exports.LeboncoinReferenceClient =
|
|
7574
|
-
exports.LeboncoinSearchClient =
|
|
7575
|
-
exports.LeboncoinSellersClient =
|
|
8181
|
+
exports.LeboncoinReferenceClient = ReferenceClient11;
|
|
8182
|
+
exports.LeboncoinSearchClient = SearchClient14;
|
|
8183
|
+
exports.LeboncoinSellersClient = SellersClient4;
|
|
7576
8184
|
exports.LinkedInClient = LinkedInClient;
|
|
7577
8185
|
exports.ListsClient = ListsClient;
|
|
7578
8186
|
exports.LoopNetBrokersClient = BrokersClient;
|
|
7579
8187
|
exports.LoopNetClient = LoopNetClient;
|
|
7580
8188
|
exports.LoopNetListingsClient = ListingsClient2;
|
|
7581
|
-
exports.LoopNetReferenceClient =
|
|
7582
|
-
exports.LoopNetSearchClient =
|
|
8189
|
+
exports.LoopNetReferenceClient = ReferenceClient13;
|
|
8190
|
+
exports.LoopNetSearchClient = SearchClient16;
|
|
7583
8191
|
exports.NotFoundError = NotFoundError;
|
|
7584
8192
|
exports.RateLimitError = RateLimitError;
|
|
7585
8193
|
exports.RealtorClient = RealtorClient;
|
|
7586
8194
|
exports.RealtorPropertiesClient = PropertiesClient;
|
|
7587
|
-
exports.RealtorReferenceClient =
|
|
7588
|
-
exports.RealtorSearchClient =
|
|
8195
|
+
exports.RealtorReferenceClient = ReferenceClient10;
|
|
8196
|
+
exports.RealtorSearchClient = SearchClient13;
|
|
7589
8197
|
exports.RedditClient = RedditClient;
|
|
7590
8198
|
exports.RedditPostsClient = PostsClient;
|
|
7591
8199
|
exports.RedditSearchClient = SearchClient3;
|
|
@@ -7622,6 +8230,12 @@ exports.VintedItemsClient = ItemsClient;
|
|
|
7622
8230
|
exports.VintedReferenceClient = ReferenceClient;
|
|
7623
8231
|
exports.VintedSearchClient = SearchClient;
|
|
7624
8232
|
exports.VintedUsersClient = UsersClient2;
|
|
8233
|
+
exports.WalmartClient = WalmartClient;
|
|
8234
|
+
exports.WalmartProductsClient = ProductsClient4;
|
|
8235
|
+
exports.WalmartReferenceClient = ReferenceClient6;
|
|
8236
|
+
exports.WalmartSearchClient = SearchClient9;
|
|
8237
|
+
exports.WalmartSellersClient = SellersClient3;
|
|
8238
|
+
exports.WalmartStoresClient = StoresClient;
|
|
7625
8239
|
exports.WebClient = WebClient;
|
|
7626
8240
|
exports.WebSocketStreamError = WebSocketStreamError;
|
|
7627
8241
|
exports.YoutubeChannelsClient = ChannelsClient;
|
|
@@ -7629,16 +8243,16 @@ exports.YoutubeClient = YoutubeClient;
|
|
|
7629
8243
|
exports.YoutubeCommunityClient = CommunityClient;
|
|
7630
8244
|
exports.YoutubeMusicClient = MusicClient2;
|
|
7631
8245
|
exports.YoutubePlaylistsClient = PlaylistsClient;
|
|
7632
|
-
exports.YoutubeReferenceClient =
|
|
7633
|
-
exports.YoutubeSearchClient =
|
|
8246
|
+
exports.YoutubeReferenceClient = ReferenceClient9;
|
|
8247
|
+
exports.YoutubeSearchClient = SearchClient12;
|
|
7634
8248
|
exports.YoutubeShortsClient = ShortsClient2;
|
|
7635
8249
|
exports.YoutubeTrendingClient = TrendingClient2;
|
|
7636
8250
|
exports.YoutubeVideosClient = VideosClient3;
|
|
7637
8251
|
exports.ZillowAgentClient = AgentClient;
|
|
7638
8252
|
exports.ZillowClient = ZillowClient;
|
|
7639
8253
|
exports.ZillowPropertiesClient = PropertiesClient2;
|
|
7640
|
-
exports.ZillowReferenceClient =
|
|
7641
|
-
exports.ZillowSearchClient =
|
|
8254
|
+
exports.ZillowReferenceClient = ReferenceClient12;
|
|
8255
|
+
exports.ZillowSearchClient = SearchClient15;
|
|
7642
8256
|
exports.collectAll = collectAll;
|
|
7643
8257
|
exports.verifyWebhookSignature = verifyWebhookSignature;
|
|
7644
8258
|
//# sourceMappingURL=index.js.map
|