早就听说requests的库的强大,只是还没有接触,今天接触了一下,发现以前使用urllib,urllib2等方法真是太搓了……
这里写些简单的使用初步作为一个记录
本文继续练习使用requests登录网站,人人影视有一项功能是签到功能,需要每天登录签到才能升级。
下面的代码python代码实现了使用requests登录网站的过程。
以下是使用fiddler抓包得到完整的HTTP请求头:
POST http:///post/four-ways-to-post-data-in-http.html"""import reimport requests#requests 安装命令:pip install requestsloginurl='http://www.zimuzu.tv/User/Login/ajaxLogin'surl='http://www.zimuzu.tv/user/sign'httphead={'Accept':'application/json, text/javascript, */*; q=0.01','Origin':'http://www.zimuzu.tv','X-Requested-With':'XMLHttpRequest','User-Agent':'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36','Content-Type': 'application/x-www-form-urlencoded',}data="account=用户名&password=密码&remember=1"session=requests.Session()login=session.post(loginurl,data=data,headers=httphead)print(login.cookies)#打印登录后取得到cookies对象print(login.json()) getstat=session.get(surl).text.split("\n") #访问签到页面,显示最近三次登录时间[print(r) for r in getstat if "三次登录时间" in r]对比其中两者可见,有一些HTTP头省略掉也能达到目的,毕竟每次手动请求头感觉挺麻烦的。
在fidder 中Connection: keep-alive Content-Length: 两项不能省略,ncat之类的工具中也不能省略Content-Length,如果改动了post的数据,需要手动修正Content-Length的值。
在python中可以省略掉Content-Length,我猜python已经帮我们处理了。
关于python3使用requests登录人人影视网站的方法就给大家介绍这么多,希望对大家有所帮助!