我正在将一个在node.js中使用大量屏幕抓取的网络应用程序混合在一起。我觉得我在每个角落都在与当前的战斗作斗争。必须有一种更简单的方法来做到这一点。最值得注意的是,有两件事令人恼火:
Cookie传播。我可以从响应头中拉出'set-cookie'数组,但是执行字符串操作来解析数组中的cookie感觉非常hack。
重定向以下内容。我希望每个请求在返回302状态代码时遵循重定向。
我遇到了看起来有用的两件事,但最后我无法使用:
http://zombie.labnotes.org/,但它没有HTTPS支持,所以我无法使用它。
http://www.phantomjs.org/,但无法使用它,因为它没有(似乎)与node.js集成。对于我正在做的事情,这也是非常重要的。
是否有任何JavaScript screenscraping-esque库传播cookie,遵循重定向并支持HTTPS?有关如何使这更容易的任何指示?
答案 0 :(得分:4)
我实际上有一个刮刀库https://github.com/mikeal/spider它非常好,你可以使用jquery和路由。
欢迎反馈:)
答案 1 :(得分:3)
你可能想要从mikeal查看https://github.com/mikeal/request,我刚跟他谈到了聊天室,他说它目前还没有处理cookie但是你可以在此期间编写一个子模块来处理这些问题。
关于重定向它处理得很漂亮:)
答案 2 :(得分:3)
事实证明有人为node.js制作了一个phantomjs模块:
https://github.com/sgentle/phantomjs-node
虽然幻像相当重,但它还支持SSL,cookie以及典型浏览器支持的所有其他内容(因为它毕竟是webkit浏览器)。
试一试,它可能正是您所寻找的。 p>