gpt4 book ai didi

javascript - 任何好的 javascript 库都允许抓取网站

转载 作者:行者123 更新时间:2023-11-28 11:55:03 25 4
gpt4 key购买 nike

我需要一个 javascript 库来抓取 Web 应用程序。我找到了这个https://github.com/riccardo-forina/status-jquery-crawler但正如作者声称的那样,这还处于开发的早期阶段。经过大量谷歌搜索后我找不到任何东西感谢您的任何投入

最佳答案

Javascript 有许多可以使用的实用程序。

选择工具时最大的问题是“我的网站是否使用 Javascript 来加载我想要的内容?”。例如,Google 的搜索页面几乎全部包含在它们为响应 HTTP GET 请求而发送的 HTML 中。

其他网站可能会使用 Javascript 加载最初未包含在 HTML 中的评论、通知或图片。这意味着,如果您只是说,给我站点 A 的 HTML,您返回的页面将不会丢失您想要的大部分内容。

静态站点

对于大多数您想要的 HTML 内容的网站,有一些优秀的 Node.js 抓取库可供您使用:

x-ray - 一个简洁的包,将cheerio捆绑在声明性抓取对象内。提供一些简单的结构来构建强大的抓取。

cheerio + request - 这是一种流行的组合,使用 Cheerio 解析 HTML 并请求为您获取它。您会发现大量资源解释了请求网页、提取 HTML 甚至在需要时使用这些工具添加身份验证和维护 session 的基础知识。

artoo.js - 浏览器抓取实用程序。对于原型(prototype)设计和一次性抓取非常有用。您可以将其添加为书签并在浏览器开发人员的控制台中运行它。它允许类似 jQuery 的选择器,并具有一些基本的以下逻辑。

动态网站

如果您需要类似浏览器的环境来从您的网站获取内容,您将需要查看 Node.js 中的 headless Web 浏览和驱动程序。 PhantomJS最受欢迎的还有many others 。请注意 - 要将 PhantomJS 与其他 Javascript 库一起使用,您需要找到一个 node.js 驱动程序:

Nightmare - 一个与 PhantomJS 交互并简化基本网页工作流程和抓取的节点库。

SpookyJS - CasperJS 的节点库,这是一个构建在 PhantomJS 之上的工具,也是一个单独的包。

PhantomJS-Node - 最流行的 PhantomJS 节点驱动程序。

(抱歉缺少链接 - 我现在没有足够的声誉来发布 2 个以上的链接)

关于javascript - 任何好的 javascript 库都允许抓取网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25513481/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com