【问题标题】:Phantom.js / Casper.js with rotating proxy?带有旋转代理的 Phantom.js / Casper.js?
【发布时间】:2013-05-25 05:05:02
【问题描述】:

我有一个简单的目标:使用phantom.js(开箱即用)或casper.js(更好更简单)加载网页,但使用代理并从列表中旋转它(如果当前有的话)不好(即网页加载失败或类似情况)。

我知道 casper.js 有 --proxy 参数,但它要求用户只指定一个代理并在运行时使用它。

问题 #1 是:如何以编程方式动态旋转代理?

我做了一些研究,发现了这个node-requester,但它没有与casper.js 集成。我试图只提取code 中的代理功能,但并没有真正理解它是如何工作的(我猜我没那么聪明)。

那么问题 #2:是否有一些简单的代理轮换实现适用于 phantom.jscasper.js

虽然我更喜欢使用花哨的casper.js,但也会使用phantom.js 裸露。

【问题讨论】:

    标签: javascript node.js phantomjs casperjs proxy-server


    【解决方案1】:

    不久前我遇到了同样的问题,我使用 PhantomJS。我们最终得到的解决方案是将 PhantomJS 作为大型 Java/Scala 服务器的子进程运行,然后处理故障并在需要时分配不同的代理(通过在 --proxy arg 中使用不同的参数重新运行)。

    【讨论】:

    • 已经好几年了,今天有更好的解决方案吗?
    【解决方案2】:

    我对 Puppeteer 也有同样的问题,虽然想法是一样的。

    我通过 https://www.npmjs.com/package/gimmeproxy-request 启动了本地 Node.js 代理,并将 Puppeteer 实例指向它。

    使用本地代理服务器,我能够验证页面何时无法加载并重试请求。

    【讨论】:

      猜你喜欢
      • 2014-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-20
      • 2013-11-28
      • 2011-11-29
      • 2013-03-07
      • 1970-01-01
      相关资源
      最近更新 更多