Semalt Expert提供了使用Java爬网的指南

Web抓取可能是关键数据的极好来源,该关键数据可用于任何企业的决策过程中。因此,它是数据分析的核心,因为它是收集可靠数据的一种可靠方法。但是,由于可剪贴的在线内容数量一直在增长,因此几乎不可能手动剪贴每个页面。这需要自动化。

虽然有许多工具是为不同的自动刮削项目量身定制的,但其中大多数都是高级工具,将使您大亏。这就是Puppeteer + Chrome + Node.JS的来源。本教程将指导您完成整个过程,以确保您可以轻松地自动抓取网站。

设置如何工作?

重要的是要注意,在这个项目中对JavaScript有一点了解会很方便。对于初学者,您将必须分别获得上述3个程序。 Puppeteer是一个节点库,可用于控制无头Chrome。无头Chrome是指在没有GUI的情况下运行chrome的过程,或者换句话说,在没有chrome的情况下运行chrome的过程。您必须从其官方网站安装Node 8+。

安装了程序之后,是时候开始创建新项目以便开始设计代码了。理想情况下,这是JavaScript抓取,您将使用代码自动执行抓取过程。有关Puppeteer的更多信息,请参考其文档,其中有数百个示例可供您使用。

如何自动执行JavaScript抓取

在创建新项目时,继续创建文件(.js)。在第一行中,您将必须调用之前安装的Puppeteer依赖项。然后是一个主要函数“ getPic()”,它将保存所有自动化代码。第三行将调用“ getPic()”函数以运行它。考虑到getPic()函数是一个“异步”函数,因此我们可以使用await表达式,该表达式将在等待“ promise”解析之前暂停该函数,然后继续进行下一行代码。这将作为主要的自动化功能。

如何调出无头铬

代码的下一行:“ const browser = await puppeteer.Launch();”会自动启动puppeteer并运行chrome实例,将其设置为我们新创建的“浏览器”变量。继续创建一个页面,然后将其用于导航到您要剪贴的URL。

如何抓取数据

Puppeteer API使您可以玩转不同的网站输入,例如时钟,表单填写以及读取数据。您可以参考它来密切了解如何自动执行这些流程。 “ scrape()”函数将用于输入我们的抓取代码。继续运行节点scrape.js函数以启动抓取过程。然后,整个安装程序应自动开始输出所需的内容。重要的是要记住仔细检查您的代码,并检查所有事情是否都按照设计进行,以免在执行过程中出错。