【问题标题】:Using deathbycaptcha with phantomjs without interrupting sessions在不中断会话的情况下将 deathbycaptcha 与 phantomjs 一起使用
【发布时间】:2015-09-02 22:21:23
【问题描述】:

考虑到 PhantomJS 不完全是 node.js(所以像 deathbycaptcha2 这样的模块)因为它们使用本机请求而被淘汰,是否可以简单地打开另一个 webpage 实例并使用它来发送 POST 请求到验证码 API 不影响其他页面实例?

这个新的page.open() 会保留第一页收集的 cookie 吗?

【问题讨论】:

    标签: javascript testing phantomjs captcha headless-browser


    【解决方案1】:

    这个新的page.open() 会保留第一页收集的 cookie 吗?

    是的,每个 PhantomJS 进程只存在一个 CookieJar。因此,您创建的每个 page 都共享相同的 cookie。将这些 page 实例视为传统浏览器中的窗口或选项卡。

    [我]是否可以简单地打开另一个网页实例并使用它向验证码 API 发送 POST 请求而不影响其他页面实例?

    这并不容易,因为 cookie 是共享的。如果您不访问相同的页面,您可以安全地创建第二个实例。如果您想在第二个实例中访问同一页面,则可以通过 child_process module 启动第二个 PhantomJS 进程(例如使用 execFile)。

    考虑到 PhantomJS 并不完全是 node.js [...]

    没错,但是 PhantomJS 和 node.js 之间有几个桥梁,例如 phantomnode-phantomnightmare 等。您可以使用它们与 PhantomJS 交互并额外调用所需的节点模块。

    【讨论】:

      猜你喜欢
      • 2017-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-12
      • 2020-06-01
      • 1970-01-01
      • 2021-01-12
      • 2012-04-14
      相关资源
      最近更新 更多