我有一个(合法的)边缘情况,我想使用任何命令行工具下载网页,但网页需要OpenID登录才能显示我需要的内容。
wget
支持basic auth and FTP,但我无法想到将其与OpenID登录结合使用的理智方式。我能想到的唯一方法
wget
wget
电话抓取该网页,并--load-cookies
上次通话中的Cookie 欢迎其他灵感。
我可以在Linux或Windows上工作。从基础设施的角度来看,Linux是首选,但任何一个平台都可以。
答案 0 :(得分:2)
在其他地方手动执行OpenID登录
我能想到的最好的方法是使用任何浏览器登录您想要的任何服务。然后,该服务将以某种方式将您的“状态”保存在浏览器的cookie中。
获取该Cookie,例如将它存储在cookie.txt中并将其传递到标题
中wget --header="Cookie: $(cat cookie.txt)" http://...
只要会话有效,就可以使用wget脚本。应该适用于99%的所有案例,可能不适用于网上银行(如果确实如此......立即转换银行:-P)