任何好的JavaScript库,允许抓取网站

doo*_*oon 0 javascript web-scraping

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

Max*_*eld 5

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

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

其他网站可能最初使用Javascript加载HTML中未包含的评论,通知或图片.这意味着,如果你刚才说,给我一个站点A的HTML,你得到的页面不会缺少你想要的大部分内容.

静态网站

对于大多数需要HTML的网站,可以使用一些优秀的node.js抓取库:

X射线 - 一个整齐的包,将cheerio捆绑在声明性刮擦对象中.提供一些简单的结构,用于构建强大的擦除.

cheerio + request - 这是一个流行的组合,使用cheerio来解析HTML并请求为你获取它.您将找到许多资源来解释请求网页,提取HTML,甚至在需要时使用这些工具添加身份验证和维护会话的基础知识.

artoo.js - 在浏览器抓取工具中.对于原型设计和一次性刮擦非常有用.您可以将其添加为书签,并在浏览器开发人员的控制台中运行它.它允许jQuery像选择器,并具有一些基本的跟随逻辑.

动态网站

如果您需要类似浏览器的环境来从您的网站获取内容,您需要查看node.js中的无头网页浏览和驱动程序.PhantomJS是最受欢迎的,但还有很多其他的.警告 - 要将PhantomJS与其他Javascript库一起使用,您需要找到node.js驱动程序:

梦魇 - 与PhantomJS对话的节点库,简化了基本的网页工作流程和抓取.

SpookyJS - CasperJS的一个节点库,一个构建在PhantomJS之上的工具,它也是一个独立的包.

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

(抱歉缺少链接 - 我现在没有足够的声望发布超过2个)