在PHP中替代Selenium Webdriver,用于SSO



我想抓取一个需要使用SSO登录的网站。我的问题是,该站点使用 SSO 进行身份验证。现在我已经在 Python 中找到了一个使用 Selenium Webdriver 的解决方案,我想知道是否有可能在 PHP 中做同样的事情?

也许有人已经遇到了同样的问题,可以帮助我......

PhantomJS是无头Webkit,Chrome很快将支持无头模式。 (我提到了PhantomJS,尽管首席开发人员最近宣布他们放弃了该项目的开发。

PhantomJS 是一种与语言无关、完全基于浏览器堆栈的解决方案,用于执行各种任务,包括屏幕截图和高级网页抓取。 缺点是抓取任务的性能显着下降,因为加载了整个页面 - 图像,Javascript,iframe等。 在我看来,虽然它有效,但 PhantomJS 对于大多数抓取任务来说都是矫枉过正的,在这些任务中,只有一部分所呈现的信息被认为是有用的。

对于我在PHP中几乎所有的网络抓取和服务器到服务器的通信需求,我使用我编写并积极维护的终极网络抓取工具工具包。 它配备了所需的一切:内容检索和数据提取工具。 它几乎适用于我扔给它的所有东西,包括一些非常毛茸茸的Word HTML网站。

通过SSO可能非常棘手,对于可能提供CAPTCHA和/或需要双因素身份验证(例如Google或Facebook(的提供商尤其如此。 登录后,最好保存会话以供以后使用(即网站的 Cookie(。 这样,您只需进行身份验证一次,然后通过与远程主机的常规通信使会话保持活动状态。

相关内容

最新更新