如何解决如何从受Shibboleth保护的网站上抓取数据?
| 我试图从我大学的一个网站上抓取数据,该网站使用Shibboleth作为身份验证/保护的一种形式。但是,我很难确定最好的方法来克服它并到达我希望抓取的页面。我有有效的凭据,可以用来登录。有人对如何完成此任务有任何建议吗?解决方法
我一直在成功编写脚本化Shibbolized登录脚本(以我为例,以监视Shibboleth IdP及其受保护的应用程序的运行状况)。
我正在使用Python的
urllib
模块及其类来处理重定向跟随和cookie传递(对于Shibboleth)以及登录表单发布。稍微修改一下urllib后,您便可以通过Shibbolized登录获得成功的大部分方法。您可以使用这种方法来处理Shibbolized网站的初始登录,然后通过直接使用Python的urllib
处理抓取。
用于登录Shibboleth的示例Python脚本
,您可以使用Mechanize提交表单并登录网站:http://wwwsearch.sourceforge.net/mechanize/
,我认为ECP配置文件旨在通过非浏览器客户端(即命令行)访问Shibboleth保护的资源
尝试我上面链接的Shibboleth Wiki页面上可用的示例客户端之一
,您还可以尝试Apache JMeter,仅记录您的操作,编写一些脚本(就shibboleth而言,并不是那么容易),并且可以自动访问此页面。
[编辑-更好的解决方案]
我相信Shibboleth文档页面上是Grinder(另一个负载测试工具)的脚本。该测试计划实际上应该很容易修改并用于您目的的Python(ok Jython)脚本的位置
,回复很晚,但是您可以在验证通过后使用Facebook Webdriver进行登录并抓取。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。