{"id":22541997,"url":"https://github.com/scrapingant/amazon_scraper","last_synced_at":"2025-08-22T03:32:18.870Z","repository":{"id":38072970,"uuid":"261548524","full_name":"ScrapingAnt/amazon_scraper","owner":"ScrapingAnt","description":"Amazon products scraper with using of rotating proxies and headless Chrome from ScrapingAnt","archived":false,"fork":false,"pushed_at":"2024-03-15T09:33:48.000Z","size":54,"stargazers_count":85,"open_issues_count":3,"forks_count":19,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-08-08T21:59:36.305Z","etag":null,"topics":["amazon","amazon-scraper","amazon-scraping-library","data-mining","js","node-js","price-scraper","price-scraping","scrape-products","scraper","scraping","scraping-api","scraping-data","scraping-python","scraping-web","scraping-websites","web-crawler","web-crawlers","web-crawling"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/@scrapingant/amazon-proxy-scraper","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ScrapingAnt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2020-05-05T18:11:39.000Z","updated_at":"2025-08-08T10:29:22.000Z","dependencies_parsed_at":"2024-04-08T18:06:31.478Z","dependency_job_id":null,"html_url":"https://github.com/ScrapingAnt/amazon_scraper","commit_stats":{"total_commits":27,"total_committers":3,"mean_commits":9.0,"dds":0.4444444444444444,"last_synced_commit":"50c38f1cd07b69ac2e25b5b1c85237d682abdb62"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/ScrapingAnt/amazon_scraper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ScrapingAnt%2Famazon_scraper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ScrapingAnt%2Famazon_scraper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ScrapingAnt%2Famazon_scraper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ScrapingAnt%2Famazon_scraper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ScrapingAnt","download_url":"https://codeload.github.com/ScrapingAnt/amazon_scraper/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ScrapingAnt%2Famazon_scraper/sbom","scorecard":{"id":126879,"data":{"date":"2025-08-11","repo":{"name":"github.com/ScrapingAnt/amazon_scraper","commit":"50c38f1cd07b69ac2e25b5b1c85237d682abdb62"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.4,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Code-Review","score":1,"reason":"Found 3/23 approved changesets -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/ScrapingAnt/amazon_scraper/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/ScrapingAnt/amazon_scraper/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/ScrapingAnt/amazon_scraper/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:48: update your workflow using https://app.stepsecurity.io/secureworkflow/ScrapingAnt/amazon_scraper/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/ScrapingAnt/amazon_scraper/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:56: update your workflow using https://app.stepsecurity.io/secureworkflow/ScrapingAnt/amazon_scraper/release.yml/master?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/release.yml:38","Info:   0 out of   6 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/release.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":1,"reason":"9 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-93q8-gq69-wqmw","Warn: Project is vulnerable to: GHSA-wf5p-g6vw-rhxx","Warn: Project is vulnerable to: GHSA-jr5f-v2jv-69x6","Warn: Project is vulnerable to: GHSA-74fj-2j2h-c42q","Warn: Project is vulnerable to: GHSA-pw2r-vq6v-hr8c","Warn: Project is vulnerable to: GHSA-jchw-25xp-jwwc","Warn: Project is vulnerable to: GHSA-cxjh-pqwp-8mfp","Warn: Project is vulnerable to: GHSA-jg8v-48h5-wgxg","Warn: Project is vulnerable to: GHSA-36fh-84j7-cv5h"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 10 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-16T04:10:11.742Z","repository_id":38072970,"created_at":"2025-08-16T04:10:11.742Z","updated_at":"2025-08-16T04:10:11.742Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271579433,"owners_count":24784250,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-22T02:00:08.480Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["amazon","amazon-scraper","amazon-scraping-library","data-mining","js","node-js","price-scraper","price-scraping","scrape-products","scraper","scraping","scraping-api","scraping-data","scraping-python","scraping-web","scraping-websites","web-crawler","web-crawlers","web-crawling"],"created_at":"2024-12-07T13:08:11.505Z","updated_at":"2025-08-22T03:32:18.627Z","avatar_url":"https://github.com/ScrapingAnt.png","language":"JavaScript","readme":"# Amazon Proxy Scraper\n\nThe useful tool to scrape products information from Amazon via ScrapingAnt API.\n\n## Features\n\n-   **Scrape products** from Amazon search result: amazon ID, rating, number of reviews, price, title, short and full description, high-resolution image, url, sponsored or not, discounted or not, featured by Amazon choice or not.\n-   Result can be saved to a CSV or Excel file.\n-   You can scrape up to **500 products**\n-   You will **not** be banned by Amazon because of using proxies out of the box.\n\n## Installation\n\n**Install from NPM**\n\n```sh\n$ npm i -g @scrapingant/amazon-proxy-scraper\n```\n\n## Before you begin\n\nThis library depends on rotating proxies scraping API - ScrapingAnt. It has a free plan.\n\nTo use this code you need ScrapingAnt API key. Just go to \u003ca href=\"https://scrapingant.com\"\u003eScrapingAnt\u003c/a\u003e, and Sign In (by clicking `TRY NOW` button). After that you can find your API key at \"Your API token\" card at the \u003ca href=\"https://app.scrapingant.com/dashboard\"\u003edashboard\u003c/a\u003e page.\n\n## USAGE\n\n**Terminal**\n\n```sh\n$ amazon-proxy-scraper --help\n\nScrapes for a products with rotating proxies from the provided key word\n\nOptions:\n  --help, -h      help                                                 [boolean]\n  --version       Show version number                                  [boolean]\n  --keyword, -k   Amazon search keyword ex. 'baking mat'  [string] [default: \"\"]\n  --apiKey, -a    ScrapingAnt API key                     [string] [default: \"\"]\n  --number, -n    Number of products to scrape. Maximum 500 products\n                                                          [number] [default: 10]\n  --save, -s      Save to a file?                      [boolean] [default: true]\n  --fileType, -t  File type to save: can be either csv or xls.  [default: \"csv\"]\n  --host, -H      The regional Amazon host (can be amazon.fr, amazon.co.uk,\n                  etc.)                         [string] [default: \"amazon.com\"]\n  --country, -c   Country of proxies location           [string] [default: \"us\"]\n\n\nExamples:\n  amazon-proxy-scraper -k 'baking mat' -a '\u003capiKey\u003e'\n  amazon-proxy-scraper -k 'baking mat' -c 'fr' -h 'amazon.fr' -a '\u003capiKey\u003e'\n```\n\n**Example 1**\n\nScrape 100 products with the \"baking mat\" keyword and save everything to a CSV file\n\n```sh\n$ amazon-proxy-scraper -k 'baking mat' -n 100 -a '\u003capiKey\u003e'\n```\n\n**The file will be saved in a folder from which you run the script:\nbaking_mat_product_1527946544582.csv**\n\n**Example 2**\n\nScrape 200 products with the \"iphone\" keyword and save everything to Excel file\n\n```sh\n$ amazon-proxy-scraper -k 'iphone' -t xls -n 200 -a '\u003capiKey\u003e'\n```\n\n**The file will be saved in a folder from which you run the script:\niphone_product_1557946545582.xls**\n\n# Module\n\n```javascript\nconst ProductsScraper = require(\"@scrapingant/amazon-proxy-scraper\")\n\nconst scraper = new ProductsScraper({\n    \"apiKey\": \"\u003capiKey\u003e\",\n    \"keyword\": \"baking mat\"\n});\n\nscraper.startScraping().then(console.log, console.error);\n```\n\nExample output:\n\n```\nTotal scraped products count: 10\n[\n  {\n    'amazon-id': 'B07MK2P53L',\n    title: \"Large Silicone Pastry Mat Extra Thick Non Stick Baking Mat with Measurement Fondant Mat, Counter Mat, Dough Rolling Mat, Oven Liner, Pie Crust Mat (16''(W)24''(L))\",\n    thumbnail: 'https://m.media-amazon.com/images/I/71RnXV6i+PL._AC_UL320_.jpg',\n    'high-res-image': 'https://m.media-amazon.com/images/I/71RnXV6i+PL.jpg',\n    url: 'https://amazon.com/Silicone-Measurement-Fondant-Counter-Rolling/dp/B07MK2P53L/ref=sr_1_1?dchild=1\u0026keywords=baking+mat\u0026qid=1590432950\u0026sr=8-1',\n    'is-discounted': true,\n    'is-sponsored': false,\n    'is-amazon-choice': false,\n    price: '16.98',\n    'before-discount': '22.99',\n    'reviews-count': 902,\n    rating: 4.8,\n    score: '4329.60',\n    savings: 6.009999999999998,\n    'short-description': 'This fits your . Make sure this fitsby entering your model number.✔️ FOOD GRADE SILICONE: GREENRANIN Pastry Mat is made of premium silicone and glass fiber. It is safe, soft, durable and will not wrinkle or fade✔️ DOUBLE THICKNESS: The thickness of the Mat is 0.6MM, which is almost twice that of other mats (0.3MM). Thicker mats will not slip and wrinkle when used✔️ NON-STICKY SURFACE: Even if grease or dough sticks to the surface, pastry mat can be easily cleaned to keep the countertop clean and sanitary✔️ ANTI-SLIP BOTTOM: It is strongly adhesive to the countertop or other surfaces, it does not slip and slide on the countertop and can realize complete adhesion✔️ 100% SATISFACTION GUARANTEED: We believe in our products, so every purchase comes with our 100% money back guarantee. If you experience an issue with your GREENRAIN product, get in touch with us for a replacement or refund. We will provide friendly, easy-to-reach support',\n    'full-description': ''\n  },\n  {\n    'amazon-id': 'B07MZ5LTWQ',\n    title: 'Silicone Baking Mat for Pastry Rolling Dough with Measurements - 19.7\" x 15.7\" BPA Free Non stick and Non Slip Blue Table Sheet Baking Supplies for Bake Pizza Cake',\n    thumbnail: 'https://m.media-amazon.com/images/I/817S5sWMqyL._AC_UL320_.jpg',\n    'high-res-image': 'https://m.media-amazon.com/images/I/817S5sWMqyL.jpg',\n    url: 'https://amazon.com/Silicone-Baking-Pastry-Rolling-Measurements/dp/B07MZ5LTWQ/ref=ice_ac_b_dpb?dchild=1\u0026keywords=baking+mat\u0026qid=1590432950\u0026sr=8-2',\n    'is-discounted': true,\n    'is-sponsored': false,\n    'is-amazon-choice': true,\n    price: '11.99',\n    'before-discount': '29.99',\n    'reviews-count': 530,\n    rating: 4.5,\n    score: '2385.00',\n    savings: 18,\n    'short-description': '',\n    'full-description': ''\n  },\n.........\n  {\n    'amazon-id': 'B00008T960',\n    title: 'Silpat 07770002481 Premium Non-Stick Silicone Baking Mat, Half Sheet Size, 11-5/8 x 16-1/2, Black',\n    thumbnail: 'https://m.media-amazon.com/images/I/6130OpPcFkL._AC_UL320_.jpg',\n    'high-res-image': 'https://m.media-amazon.com/images/I/6130OpPcFkL.jpg',\n    url: 'https://amazon.com/Silpat-Premium-Non-Stick-Silicone-Baking/dp/B00008T960/ref=sr_1_3?dchild=1\u0026keywords=baking+mat\u0026qid=1590432950\u0026sr=8-3',\n    'is-discounted': true,\n    'is-sponsored': false,\n    'is-amazon-choice': false,\n    price: '22.95',\n    'before-discount': '24.99',\n    'reviews-count': 2743,\n    rating: 4.7,\n    score: '12892.10',\n    savings: 2.039999999999999,\n    'short-description': 'This fits your . Make sure this fitsby entering your model number.Turn ANY pan into a non-stick surface and save time cleaning up! Use Silpat instead for any baking recipe (sweet or savory) that calls for parchment paper; Silpat replaces the need for butter, grease, oils, and spraysMade of fiberglass mesh and the highest quality food grade silicone, which provides consistent heat distribution and promotes even baking and browningSilpat is the original non-stick baking mat and has stood the test of time with use by the most demanding chefs in the world; Silpat products conform to US regulations on food grade silicone, and are FDA, NSF, and Kosher certifiedMat measures 11-5/8\" x 16-1/2\"; Made for a 13\" x 18” panTemperature safe for use in the oven and freezer (-40° F to 482° F)',\n    'full-description': \"Size:Half Sheet | Style Name:Baking MatProduct DescriptionThis 11.6 x 16.5-inch half-sheet size baking mat will turn your pan into a non-stick surface. Silpat is especially great for working with sticky materials such as gooey dough, taffy, caramel, or anything your imagination allows. Nothing sticks to Silpat, so it will save you a lot of time cleaning as there is no more sticky mess on your pans! Silpat never needs greasing, which saves both time and money. Use Silpat instead for any baking recipe that calls for parchment paper. Utilizing Silpat products saves time, money and creates less waste for our environment. It is ideal for use when creating Danish pastries, baking biscuits, working with sugar and all sugary and salted preparations. Silpat Non-Stick...\"\n  },\n  {\n    'amazon-id': 'B085PX3DYH',\n    title: 'Silicone Baking Mats Pastry Mat, Adoric 2Pack Non-stick Baking Mat and 1Pack 16x24 Inch Silicone Pastry Mat with Measurement Fondant Mat, Counter Mat, Dough Rolling Mat, Oven Liner, Pie Crust Mat',\n    thumbnail: 'https://m.media-amazon.com/images/I/719rcMnmt3L._AC_UL320_.jpg',\n    'high-res-image': 'https://m.media-amazon.com/images/I/719rcMnmt3L.jpg',\n    url: 'https://amazon.com/Silicone-Adoric-Non-stick-Measurement-Fondant/dp/B085PX3DYH/ref=sr_1_4?dchild=1\u0026keywords=baking+mat\u0026qid=1590432950\u0026sr=8-4',\n    'is-discounted': false,\n    'is-sponsored': false,\n    'is-amazon-choice': false,\n    price: '23.99',\n    'before-discount': '',\n    'reviews-count': 25,\n    rating: 4.9,\n    score: '122.50',\n    savings: 0,\n    'short-description': '',\n    'full-description': ''\n  }\n]\n```\n\n**Options**\n\n```javascript\nconst options = {\n    keyword: \"keyword to search, string\", //Required parameter. Example: \"baking mat\"\n\n    number: 50, //Optional. 10 by default\n\n    host: \"amazon.fr\", //Optional. amazon.com by default.\n\n    apiKey: \"\u003capiKey\u003e\", //Required parameter. API key for ScrapingAnt API\n\n    save: true, //Optional. Defines saving result to CSV. False by default.\n\n    country: \"us\", //Optional. Proxy location country. US by default. Available countries: ae, br, cn, de, es, fr, gb, hk, in, it, il, jp, nl, ru, sa, us,\n\n    fileType: 'xls', //Optional. If specified it overrides save option to true.\n\n    showProgress: true //Optional. Show progress bar to CLI. False by default.\n}\n```\n\n## License\n\n**MIT**\n\n**Free Software**\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscrapingant%2Famazon_scraper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscrapingant%2Famazon_scraper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscrapingant%2Famazon_scraper/lists"}