您是对 Amazon 上提供的大量业务相关数据感兴趣的营销人员还是研究人员?使用您自己或他人构建的 Amazon Scrapers,您可以将自己的手放在 Amazon 上的数据上。现在进来了解更多。
亚马逊之于电子商务就像 Facebook 之于社交媒体一样——就像 Facebook 拥有大量可用于社会研究和研究的数据一样,亚马逊是获取商业相关数据的地方。这对亚马逊上的卖家和供应商来说更为重要。对于企业来说,他的产品买家留下的评论可以帮助他微调他的决定,并了解产品的用户真正喜欢和不喜欢什么。当我说评论时,我指的不是星级,而是可用于情感分析和其他形式分析的实际评论。卖家可以使用它进行竞争分析,并使用它来监控竞争对手的产品排名和价格。
除了评论数据和产品数据外,评价最高的产品及其排名的数据还可用于检测产品受欢迎程度的变化。事实上,如果你能掌握亚马逊上的数据,你还可以做更多的事情。为了方便您访问这些数据,Amazon 提供了一个API。但是这个 API 限制太多,并且有很多限制,使得它们在大多数用例中都没有用。作为对亚马逊上可用的大量数据感兴趣的营销人员或研究人员,您会怎么做?留给您的唯一选择是从亚马逊网页中抓取和提取您需要的数据。
亚马逊数据抓取– 概述
您是计划从亚马逊抓取数据的编码员吗?如果您对此问题的回答是肯定的,那么本节对您来说非常重要。亚马逊不像任何其他网站,你可以在上面展示你的网络抓取肌肉和技能——它有一个庞大且经验丰富的技术团队作为后盾,比你更有经验。
当你需要小规模地从亚马逊上抓取数据时,你甚至可能不会遇到任何形式的问题,但是当你对这个大规模感兴趣甚至想要从亚马逊上抓取大数据时,你就有了许多挑战需要应对——IP 块、验证码,甚至是欺骗性的HTTP 200 成功代码,没有返回有意义的数据。
与您需要登录才能抓取的其他网站不同,亚马逊抓取不会以这种方式工作。虽然您可能会认为这是您的优势,但亚马逊为防止网络抓取而实施的复杂反机器人算法可以弥补这一点。即使没有持久的 cookie 和会话,亚马逊也有一个基于人工智能的反垃圾邮件系统,可以嗅出你并阻止你抓取。它非常擅长检测机器人并阻止它们。与其他网站会在屏蔽你之前犹豫不决不同,亚马逊不会——事实上,亚马逊可以说是对 IP 禁令是自由的,当你的 IP 被禁止时,它大多是永久性的。
IP 轮换是爬取亚马逊的关键,并确保您使用的是住宅高轮换代理。您还需要避免遵循模式并欺骗不同的浏览器标题并旋转它们。在此过程中,您必须保持低调并注意您的行为的合法性。网络抓取可能是合法的,也可能是非法的,这取决于您将抓取的数据用于什么目的。善待并设置延迟以避免用过多的请求轰炸他们的服务器——即使他们可以处理它们。
如何使用 Python、Requests 和 BeautifulSoup 爬取亚马逊
你想自己刮亚马逊,避免支付市场上现成的亚马逊刮刀标明的高额费用吗?然后你需要知道你有很多事情要处理。虽然亚马逊想要拒绝您访问其公开可用数据时可以直截了当,但一些网络抓取教程会告诉您检查返回的 HTTP 状态是否为 200,以确保您的请求在抓取之前成功。好吧,亚马逊可以返回200 状态代码,但仍然返回一个空响应。
您还必须处理始终升级和更新您的刮板的问题,因为他们会更改其站点布局和反机器人系统以破坏现有的刮板。验证码和 IP 块也是一个主要问题,亚马逊在几页废纸之后大量使用它们。虽然使用 Requests 和 BeautifulSoup 可以帮助您指导使用 javaScript 进行行为分析,但亚马逊仍然可以嗅出您,因此,您需要利用住宅代理和验证码解决服务来逃避它们。
你如何开发你的爬虫取决于你需要的数据。如果页面使用了 Ajax,那么您将不得不使用浏览器的网络检查工具来监控和模仿 JavaScript 在后台发送的请求。这可能需要做很多工作,因此建议使用 Selenium。如果您浏览客户评论页面,您将观察到不同的布局以及布局如何变化;有时,在页面之间——这一切都是为了防止刮擦。评论页面本身使用Ajax。
但是对于即使没有启用 JavaScript 也能显示的页面,您可以使用 Requests 和 BeautifulSoup 的二重奏。但是,请确保它与您的请求一起发送必要的标头,例如 User-Agent、Accept、Accept-Encoding、Accept-Language 等。如果不发送流行网络浏览器的标头,亚马逊将拒绝您访问——这表明您已被钓鱼作为机器人出来。下面是一个亚马逊产品详细信息抓取工具,它接受产品 ASIN 列表作为参数,并使用下载产品网页的请求和提取数据的BeautifulSoup返回带有产品详细信息的 JSON 对象。
import requests from bs4 import BeautifulSoup user_agent = 'Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36' accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8 ,application/signed-exchange;v=b3;q=0.9" accept_en = "gzip, deflate, br" accept_lan = "en-US,en;q=0.9" cache_con = "max-age=0" cokies = "" down_link = "0.35" headers = {'accept': accept, 'accept-encoding': accept_en, 'accept-language': accept_lan, 'cache-control': cache_con, 'cache': cokies, 'user-agent': user_agent,} class AmazonProductScraper: def __init__(self, asin): self.asin = asin self.page_url = "https://www.amazon.com/dp/" + self.asin def scrape_product_details(self): content = requests.get(self.page_url, headers=headers) soup = BeautifulSoup(content.text, "html.parser") product_name = soup.select("#productTitle")[0].text product_price = soup.select("#priceblock_saleprice")[0].text product_review_count = int(soup.select("#acrCustomerReviewText")[0].text) product_categories = [] for i in soup.select("#wayfinding-breadcrumbs_container ul.a-unordered- list")[0].findAll("li"): product_categories.append(i.text.strip()) product_details = {'name': product_name, "price": product_price, "categories": product_categories, "review_count": product_review_count} return product_details product_asin = "B075FGMYPM" x = AmazonProductScraper(product_asin) x.scrape_product_details()
最好的亚马逊刮刀
对于非编码人员或编码人员经验较少,使用市场上已有的亚马逊刮板是可行的方法。这是因为其中一些工具有经验丰富的开发人员管理和支持他们的开发;当需要更新时,它们会比您更快地生效。以下是市场上 5 款最好的亚马逊刮刀。
1. BrightData 亚马逊收集器
定价: 151K 页面加载的起价为 500 美元
免费试用:可用
数据输出格式: Excel
支持平台:基于网络
借助 Data Collector,您无需具备编码技能即可抓取 Amazon。Data Collector 已被证明是亚马逊顶级抓取工具之一,因为它的开发方式永远不会被检测和阻止。
这意味着您将始终在Data Collector的帮助下从 Amazon 获得所需的数据。使用 Data Collector,您可以抓取产品详细信息、查看产品报价,甚至发现新鲜产品。
如果您需要抓取评论和评级,您必须联系 Bright Data 以获取满足您特定要求的自定义收集器。与其他刮刀相比,可以看出该工具价格昂贵。但是,您可以确保始终获得所需的数据。
2. Octoparse
定价:每月 75 美元起
免费试用: 14 天免费试用,有限制
数据输出格式: CSV、Excel、JSON、MySQL、SQLServer
支持平台:云端、桌面
使用基于云的 Web 抓取工具 Octoparse 将您的 Amazon 数据抓取任务置于自动驾驶仪上。他们同样有一个可安装的桌面应用程序。事实证明,Octoparse以其易用性成为目前市场上最好的网络抓取工具之一。对于亚马逊,它为不同的任务和不同的亚马逊国家网站提供了不同的即用型亚马逊模板。
有了这个,您不必开始创建新任务。Octoparse 带有智能模式检测系统和强大的功能。你会喜欢 Octoparse 的一件事是它们提供了易于理解的教程。它有一个免费试用计划,非常适合测试和小型项目。
3. Apify 亚马逊爬虫
定价:每月 49 美元起
免费试用:功能齐全的免费帐户,每月 5 美元的信用额度
数据输出格式: JSON、CSV、Excel、XML、HTML、RSS
支持平台:云端、桌面
Apify 的Amazon Scraper可让您超越官方 Amazon API 的限制。这个现成的抓取工具可以提取和下载评论、价格、描述、图像、卖家名称、状况和所有其他产品信息。
它还允许您获取特定亚马逊标准识别码 (ASIN) 的报价。如果您已经拥有它们,您甚至可以抓取直接的 ASIN URL。
Apify Amazon Scraper 还可以按关键字搜索并指定您要定位的国家/地区。Apify 平台包括专为网页抓取而设计的代理服务,因此您可以期待快速可靠的结果以及专家支持。
4. ParseHub
定价:每月 149 美元起
免费试用:桌面版是免费的,但有一些限制
数据输出格式: Excel、JSON
支持平台: 云端、桌面
ParseHub 是一个通用的网络抓取工具,您可以使用它从任何类型的网页中提取数据,无论是仅具有 HTML 和 CSS 的旧网页还是富含 JavaScript 的现代网页。这个网络抓取工具带有一个可视化的点击界面,用于训练软件对数据进行抓取——这非常适合亚马逊抓取,尤其是当您对抓取产品细节或查看数据感兴趣时。只需单击一个数据点,就会突出显示具有相同模式的所有其他数据点——这要归功于 ParseHub 的智能模式检测。
5. Proxycrawl 亚马逊刮板
定价: 50,000 积分每月 29 美元起
免费试用:前 1000 个请求
数据输出格式: JSON
支持的平台:基于云 – 通过 API 访问
Proxycrawl 是一家包罗万象的抓取解决方案提供商,拥有大量针对有兴趣从 Web 抓取数据的企业量身定制的产品。他们的 Scraper API 中有一个 Amazon Scraper,可以说是市场上最好的 Amazon Scraper 之一。只需一个 API 调用,您就可以获取有关亚马逊上指定产品的所有公开可用数据。
不仅如此,Proxycrawl Amazon Scraper 还可以帮助您从亚马逊搜索引擎结果页面 (SERP) 中获取数据,包括畅销书信息以及排名信息。这个亚马逊爬虫易于使用,并将请求的数据作为 JSON 对象返回。
6. ScrapeStorm
定价:每月 49.99 美元起
免费试用:入门计划是免费的 – 有限制
数据输出格式: TXT、CSV、Excel、JSON、MySQL、Google Sheets等。
支持平台:桌面
使用像 ScrapeStorm 这样的抓取工具,从亚马逊抓取数据,例如提取客户评论、星级评分、产品列表和产品详细信息,比您想象的要容易。ScrapeStorm 支持大量操作系统,并且还有一个基于云的解决方案,非常适合安排网络抓取任务。
ScrapeStorm 是一种基于人工智能的网络抓取工具,在许多情况下,它甚至不需要您指定所需的数据,因为它使用其基于智能的系统进行数据识别。ScrapeStorm 是由前 Google 爬虫团队开发的,因此可以肯定该团队知道他们在做什么。
7. Diffbot 自动 API
定价: 250,000 积分每月 299 美元起
免费试用: 10,000 积分,为期 14 天
数据输出格式: JSON
支持的平台:基于云 – 通过 API 访问
Diffbot Automatic API 使产品数据的提取变得容易,不仅在亚马逊上,而且在所有其他电子商务网站上。除了产品数据,您还可以使用它来提取新闻、文章、图像和论坛上的讨论。对于他们的产品提取 API,它可以抓取网页以获取和清理结构化产品数据,而无需您编写特定于站点的规则——这要归功于它使用人工智能来检测关键数据点。在使用它之前,您甚至可以在不注册的情况下对其进行测试,以验证它是否可以在您打算使用它的站点上运行。Diffbot Automatic API 将使您的 Amazon Web 抓取任务变得简单——您甚至可以将其与您的应用程序集成。
结 论
毫无疑问,尽管亚马逊不赞成抓取它的列表、产品详细信息以及客户资料和评论,但这种做法已经持续存在——直到他们提供了一个广泛的 API,这将使网络抓取成为浪费时间。在那之前,对亚马逊上公开的大量商业数据感兴趣的个人和企业将找到使用自动化手段抓取和提取它们的方法。以上是您可以使用的市场上 5 种最佳亚马逊刮板的列表。
发表评论
发表评论: