是什么让你的公司在这个日益数字化的时代拥有持续的竞争优势?在这个时代,多种新技术不断涌现,阻挡新进入者的壁垒正在倒塌,交易和通信成本在下降,计算能力几乎人人都能获得,在哪里伪造了越来越多的强大算法?答案很简单:数据是决定你能否跟上竞争对手的主要因素。你拥有的竞争对手无法获得的数据越多,你的竞争优势就越强。

你想知道为什么吗?有可能会有更强大的算法出现,计算能力变得对每个人都更容易获得,但重要的是,谁拥有我们将用来做决定和改善公司的数据?如果每个人都能访问算法和计算能力,那么竞争对手唯一无法访问的就是你的数据。而保持领先的一种方法,就是了解如何通过网络抓取获取额外的数据。本文将向您展示您可以使用web抓取和爬行来为您的公司收集进一步的数据。

Web抓取是指以高效、快速的方式自动从万维网中提取数据的过程。这是市场调查和商业策略的核心,例如,当你想定期比较你的网店的价格和竞争对手的价格时。

在这篇文章中,我们将介绍web抓取的优点,web抓取的应用,最后为您的公司介绍所有可能的web抓取形式。根据你公司的战略,网页抓取的目标和要抓取的网站的复杂性,不同形式的网页抓取可能是更好的选择。与此同时,如果您只是一个个人数据科学家,正在寻找一个很好的web抓取世界的介绍,这篇文章也将首先给您一个很好的见解,关于如何开始。

业务领域和影响:创建常量传入数据流

几乎没有哪个领域的网络抓取没有深远的影响。在数据日益成为竞争的主要资源的情况下,获取数据也变得尤为重要。

  • 市场销售:Web Scraping可以通过定期提取不同平台的客户评级,帮助您收集额外的领导,分析人们的利益,并监控消费者情绪
  • 竞争对手分析与定价:如果您的业务正在进行定价策略,Web Scraping可以帮助您提取竞争对手的定价。此外,您可以跟踪竞争对手对新闻的所有举措,竞争对手的开发以及在异常基础上的折扣和定价。
  • 战略发展:为了制定战略,您往往需要难事位。为此,刮擦可能是对初步分析进行一次性提取和监控策略的有用。此外,您可能希望定期捕获行业的最新趋势,因此您可以开发一个网履带,检查在与您公司相关的区域中的新闻。
  • 产品开发:如果你需要亚马逊等平台上的客户评级或产品描述,那么网络抓取也是一个有效的选择。
  • PR&品牌管理:Web抓取可以帮助您提取有关您的公司在万维网上被提及的频率以及相关情绪是什么的信息。这样你的企业就可以及早发现任何负面发展,防止品牌受损。
  • 风险管理与合规:Web爬网器也可用于进行自动化背景检查以确保,即您公司的一切顺利运行。此外,它可以帮助您抓取法律数据库。另一个有趣的发展是,Web爬网越来越多地用于检测欺诈者为您的产品编写虚假评论的欺诈性评论。
  • 商业智能:您可以使用web抓取来丰富您的机器学习数据,并改进您的机器学习模型。此外,您可以使用仅在互联网上可用的额外数据来丰富不同的报告。

方法:从简单的静态抓取到自动浏览

刮的复杂性

为了向您展示每种方法的优缺点,我们将看看下面提到的以下类别。对于每个类别,我们将分配从1(性能不佳)到5(非常好的性能)的分数。

  1. 力量:这个类别告诉您这种方法如何处理具有复杂结构的主页。低灵活性(1)表明我只能抓取简单的静态主页,而高灵活性(5)表明这种方法也可以掌握复杂的网页,除了一些需要与主页交互的例外情况。
  2. 编码:这个类别表明了该方法的编码强度。如果应用程序编码量大,算法复杂,则在这一项上得分较低(1)。如果方法可以不编码实现,则得分较高(5)。
  3. 价格:此类别表示这种方法与其他方法的成本如何。一个非常昂贵的方法将得分低(1),而较低的成本方法将得分高(5)。
  4. 维护:这个类别将对每种方法的相关维护工作进行评估。高维护努力将导致低分数(1),低维护努力将导致高分数(5)

扫描方法解释了

静态webscraping.

静态网页抓取只提取html代码,没有任何交互
静态网页抓取只提取html代码,没有任何交互

几乎您将使用的每一种编程语言都有一个库,该库允许您抓取动态页面,或者至少允许您通过互联网发送get请求。例如,对于Python,它是Scrapy,对于R,它是Rvest。这是最简单的编码方法,可以在短时间内提取大量数据。然而,它也是最不强大的基于编码的方法。您将只能抓取静态主页。一旦主页的结构变得更复杂或需要与主页交互,这种方法就失败了。

分数静态WebScraping
分数静态WebScraping

自动浏览(硒)

硒
使用selenium,您可以在一个简单的浏览器上自动执行所有操作

自动浏览也基于编程语言。程序员基本上以编程语言编写,支持Selenium(Python,R,Java等)的说明,应该在浏览器中完成什么。在后端中,您可以自动执行通常在浏览器上手动进行操作的所有步骤(例如,在URL中输入,然后按Enter键,单击导航中的第一个链接,从某个区域复制值并将其粘贴到一个本地Excel纸)。然后,书面脚本将通过打开浏览器来执行所有说明,并模拟每个步骤,就像人类在步骤后面一样。与简单的静态WebScraping相比,这是一种相当复杂的方法,但同时采用更强大的方法,因为您可以刮掉基于Ajax的主页,与主页交互以检索其他不可访问的信息。同一等 时间你可以经历一些安全措施,因为从另一方面来看,它看起来像一个普通人正在访问主页。

自动浏览得分
自动浏览得分

应用程序编程接口(API)

ebay api
例如,Ebay有一个广泛的API库,可以让您直接访问数据

许多主页和基于互联网的公司提供自己的api,以便让您访问他们的数据。这使得抓取过程更加容易和快速,因为只需少量编码就可以抓取数据,并且将以可供使用的格式提供。然而,官方api的缺点是,它通常不是免费的,需要依赖成本 一个您想要提取的数据量。此外,api不够灵活,因为你只能抓取主页所有者允许你抓取的数据。

分数的api
分数的api

拦截AJAX调用

隐藏的API
当你访问主页时,可以通过观察流量发现隐藏的API

即使您想要抓取的主页没有提供官方API,也有可能存在一个“隐藏API”,特别是当主页使用ajax调用时。熟练的程序员可以轻松访问ajax接口,用很少的代码发送请求,并以JSON等易于解释的格式提取所有必要信息。虽然这种方法可以让您访问大量数据,但它通常不够灵活,并且需要关于如何开发主页的高级知识。如果你想了解更多关于隐藏api和如何实现它们,我建议你咨询以下两个主页:

拦截AJAX调用的分数
拦截AJAX调用的分数

Web刮擦工具

八达曲
Octoparse是一个流行的具有免费层的低代码web抓取工具

有各种各样不同的网页抓取工具,可以满足你的需要,帮助你实现你的网页抓取,很少编码。有很多不同的工具,从非常强大的可以定期更改ip地址甚至可以克服验证码的工具,到简单的只能抓取静态主页的工具。有些工具可以帮助您定期连续地刮取数据,或者可以帮助您进行一次性刮取。许多工具还提供额外的客户支持。这种方法的唯一优点是,根据工具的功能,它的成本非常高。一些工具,如Octoparse,允许您在一定限制范围内免费抓取数据。以下是对Octoparse能力的描述:

“对于那些想从网站中提取数据而不需要编码的人来说,Octoparse是一个非常棒的工具。它包含一个点和 点击界面,允许用户在登录表单后面刮擦,填写表单,输入搜索条件,滚动 无限滚动,渲染JavaScript,更多。它还包括想要在云中运行刮板的用户的托管解决方案。最重要的是,它配备了一个宽敞的免费层,允许用户免费建立最多10个爬行器。“

如果您想进一步研究这种方法,这里有一个比较10个网页抓取工具的主页

网页抓取工具的得分
网页抓取工具的得分

Web抓取服务

datahen.
DataHen是一个快速的提供商,非常适合开始使用,或者需要快速完成

如果您计划完全外包刮擦,这是前进的方法。从您身边,所需的一切都是雇用Web刮擦服务,并准确地解释您所需的信息,其余的将由服务处理。这种方法对于一次性刮擦特别有用。但是,这种方法也可能是非常昂贵的。流行的Web刮擦服务是Datahen,经常建议。获取更多信息 定价对于服务,我建议您咨询以下Quora上的一个帖子,解释了不同服务的定价

服务
使用服务可以将繁重的工作转移到分析部分

方法比较

所有网页抓取方法的比较
所有网页抓取方法的比较

在选择正确的方法时,您应该考虑是否要将web抓取过程外包或内部开发。对于您的web抓取项目,尽量保持简单。这意味着您应该只使用强大的工具,如果它们确实是必要的。如果您满足于不需要的复杂方法,那么您将在不需要的维护和特性上超支。

优点:快速、高效、可靠

Web抓取提供了几个优点,包括以下几点:

  1. 速度:手工提取需要数天或数周的内容,抓取可以大大减少工作并提高决策速度。
  2. 可靠和包括:手动抓取数据很容易导致错误,例如输入错误、忘记信息或信息放在错误的列中。自动抓取过程可以确保数据的一致性和质量。此外,您可以直接指示scraper以您想要的格式对数据进行排序、组织和放置,而不需要任何额外的手工工作。
  3. 低成本:一旦实现,提取数据的总体成本就会显著降低,特别是与提取数据所需的手工工作相比。
  4. 组织:刮板可以定期刮取数据,也可以在特定事件发生时(例如,当有新数据可用时)随时刮取数据。这样,您就可以依赖这样一个事实,即您将始终拥有最新的数据。
  5. 低维护:网页搜集器通常不需要太多的维护一段时间。

缺点:复杂性决定了抓取成本

虽然网络抓取可以给公司带来巨大的好处,但它也有一些缺点和假设:

  1. 不那么复杂的页面:你要抓取的网页越复杂,抓取就会变得越困难。原因有二。第一,设置刮板变得更加困难,第二,维护成本也会增加,因为你的刮板更容易碰到差错。
  2. 稳定的主页:自动网页抓取只有在目标主页不频繁改变其结构的情况下才有意义。每一个结构变化都意味着额外的成本,因为网刮板也需要调整。
  3. 结构数据:如果您想从1000个不同的主页剪除数据,并且每个主页都有一个完全不同的结构,Web Scraping将无法正常工作。需要有一些仅在某些情况下不同的基本结构。
  4. 低保护:如果主页上的数据是受保护的,那么网络抓取也会成为一个挑战,并推高成本。一个简单的保护形式是例如验证码,当主页要求你登录,或当数据只能通过API访问的成本。

12评论

    • 嗨,爱米利娅,

      非常感谢您的评论。你提出了一个非常重要的问题!目前,网络抓取还处于灰色地带,根据经验,只要数据没有受到保护(比如有登录信息),你就可以抓取数据。当然,还有其他问题需要考虑,比如个人数据。我不是给你建议的律师,我建议任何人都去咨询这方面的专业人士。

    • 你好,
      很高兴听到你喜欢这些文章。你可以打赌,我将包括更多有用的文章

    • Happy to hear that my blog helps you Hope my future articles will be as helpful as this one

    • 你好,
      我很高兴你觉得有用。这正是我这么做的原因,所以我可以帮助人们更好地理解和应用Analytics:)。

      干杯,
      Andrej

  • 神奇的文章!为了从网站上获取内容,很多行业都依赖于对可靠信息的提取。例如,保险部门、医疗保健部门、媒体、房地产、旅游行业、金融、研究和领先发电部门。

    • 嗨,史蒂夫,很高兴听到你喜欢这篇文章。谢谢你分享你的个人经历

      干杯,
      Andrej

  • 阅读你的文章后,我很惊讶。我知道你解释得很好。我希望其他读者还会在阅读你的文章后遇到我的感受。点击这里

发表评论

您的电子邮件地址将不会被公布。必填字段被标记