我正在尝试通过网络服务器自动下载文件。我打算使用 wget 或 curl 或 python urllib / urllib2。
大多数解决方案使用 wget 和 urllib 和 urllib2。他们都在谈论基于 HHTP 的身份验证和基于 cookie 的身份验证。我的问题是我不知道在存储我的数据的网站中使用了哪一个。以下是与网站的互动:
- 通常我登录网站http://www.anysite.com/index.cgi?
- 我得到一个带有登录名和密码的表格。我输入两者并按回车键。
- 网址保持为http://www.anysite.com/index.cgi?在整个交互过程中。但现在我有一个文件夹和文件列表
- 如果我单击文件夹或文件,URL 将更改为http://shamrockstructures.com/cgi-bin/index.cgi?page=download&file=%2Fhome%2Fjanysite%2Fpublic_html%2Fuser_data%2Fuserareas%2Ffile.tar.bz2
浏览器为我提供了保存文件的机会
我想知道如何确定该站点是使用 HTTP 还是基于 cookie 的身份验证。之后我假设我可以在 python 中使用 cookielib 或 urllib2 来连接它,获取文件和文件夹列表并在保持连接的同时递归下载所有内容。
pS:我已经尝试过通过 wget 和 wget --http-user "uname" --http-password "passwd" http://www.anysite.com/index.cgi连接的千篇一律的方法?,但他们只将网络表单返回给我。