0

好的,所以,我正在做一个小脚本,下载这个网站的 X 个壁纸。

www.wallbase.cc

我已经可以下载我想要的方式,但我想从 Python 脚本中使用我的用户名和密码登录,我已经找到了如何在“普通”网站中执行此操作,其中登录表单可以从 url 中看到,但是在这个我必须调用一个javascript函数来显示要登录的网络表单,而且我真的不知道如何登录也没有打开网络表单。

有人可以帮我弄这个吗?

非常感谢。

4

1 回答 1

2

您可以使用 POST 方法发送您的凭据。

LiveHTTPHeaders firefox 模块对于跟踪 HTTP 请求非常有用:

http://wallbase.cc/user/login

POST /user/login HTTP/1.1
Host: wallbase.cc
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:15.0)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://wallbase.cc/home
Cookie: xxx
Content-Type: application/x-www-form-urlencoded
Content-Length: 74
usrname=d&pass=d&nopass_email=Type+in+your+e-mail+and+press+enter&nopass=0
HTTP/1.1 200 OK
Content-Encoding: gzip
Vary: Accept-Encoding
Content-Type: text/html
Transfer-Encoding: chunked
Date: Sun, 14 Oct 2012 05:05:21 GMT
Server: lighttpd

重要的部分是

usrname=<YOUR USER NAME>&pass=<PASSWORD>&nopass_email=Type+in+your+e-mail+and+press+enter&nopass=0

这就是您需要通过 POST 发送的数据。在 SO 网站上的搜索中,您会在 python 中找到大量 POST。

我建议您使用mechanize模块来做到这一点。

于 2012-10-14T05:10:11.720 回答