我正在尝试从受 shibboleth 身份验证保护的页面上刮取数据。我无法让 cURL 和 webisoget 正常工作。所以,我正在尝试 wget,因为我认为我可以通过我的证书并获取我想要的页面。但是,我也遇到了麻烦,我很难找到有关我的问题的文档。
这是我试图执行的 wget 命令:
>wget --no-check-certificate --certificate=www.washington.edu.crt https://www.washington.edu/cec/i/INFO200A2821.html
这是该命令返回的内容:
SYSTEM_WGETRC = c:/progra~1/wget/etc/wgetrc syswgetrc = c:/progra~1/wget/etc/wgetrc --2011-05-28 00:32:37-- https://www.washington.edu/cec/i/INFO200A2821.html 解决 www.washington.edu... 140.142.16.69, 140.142.11.167, 140.142.15.8 连接到 www.washington.edu|140.142.16.69|:443... 已连接。 警告:无法验证 www.washington.edu 的证书,由 `/C=ZA/ST=Wes 颁发 tern Cape/L=开普敦/O=Thawte Consulting cc/OU=认证服务部/ CN=Thawte 高级服务器 CA/emailAddress=premium-server@thawte.com': 遇到自签名证书。 HTTP 请求已发送,等待响应... 200 OK 长度:807 [文本/html] 保存到:`INFO200A2821.html.2' 100%[=======================================>] 807 --.-K/s 0秒内 2011-05-28 00:32:38 (6.78 MB/s) - 'INFO200A2821.html.2' 已保存 [807/807]
但是,即使我收到一个页面,它也不包含我希望抓取的信息。返回的页面包含一个在加载时自动提交表单的表单。该表单包含 pubcookie 和 relay_url 的隐藏输入字段。
使用我的凭据登录时,我可以访问该页面。但是,我正在努力实现自动化并获取信息。