Python3使用requests登录人人影视网站的方法
作者:codegay 时间:2021-10-04 15:42:19
早就听说requests的库的强大,只是还没有接触,今天接触了一下,发现以前使用urllib,urllib2等方法真是太搓了……
这里写些简单的使用初步作为一个记录
本文继续练习使用requests登录网站,人人影视有一项功能是签到功能,需要每天登录签到才能升级。
下面的代码python代码实现了使用requests登录网站的过程。
以下是使用fiddler抓包得到完整的HTTP请求头:
POST http://www.zimuzu.tv/User/Login/ajaxLogin HTTP/1.1
Host: www.zimuzu.tv
Connection: keep-alive
Content-Length: 102
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
DNT: 1
Referer: http://www.zimuzu.tv/user/login
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.8,en;q=0.6
Cookie: PHPSESSID=st40f3vohv6q16ec3atekimba0; last_item:10733=Game.of.Thrones.S06E01.The.Red.Woman.1080p.WEB-DL.DD5.1.H.264-NTb.mkv; last_item_date:10733=1461856566; mykeywords=a%3A2%3A%7Bi%3A0%3Bs%3A6%3A%22%E7%A1%85%E8%B0%B7%22%3Bi%3A1%3Bs%3A14%3A%22Silicon+Valley%22%3B%7D; zmz_rich=2
account=你的用户名&password=你的密码&remember=1&url_back=http%3A%2F%2Fwww.zimuzu.tv%2Fuser%2Fsign
python3使用requests登录人人影视网站.py代码:
"""
python3使用requests登录人人影视网站.py
2016年5月11日 07:33:59 codegay
参考资料requests文档:
http://cn.python-requests.org/zh_CN/latest/
四种常见的 POST 提交数据方式
https://imququ.com/post/four-ways-to-post-data-in-http.html
"""
import re
import requests
#requests 安装命令:pip install requests
loginurl='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登录人人影视网站的方法就给大家介绍这么多,希望对大家有所帮助!
标签:python,requests,登录,人人网
0
投稿
猜你喜欢
PHP中使用BigMap实例
2024-05-22 10:07:02
javascript数组的使用
2024-06-07 15:25:37
Go slice切片make生成append追加copy复制示例
2024-02-13 11:48:29
淘宝2011新版首页开发实践
2011-01-20 20:07:00
Python中filter与lambda的结合使用详解
2022-03-03 01:35:03
python设置值及NaN值处理方法
2022-11-30 01:48:42
Python函数默认参数设置的具体方法
2021-03-13 08:19:07
使用Python对Excel进行读写操作
2022-05-25 16:56:32
Matlab实现图像边缘检测
2021-02-06 07:40:58
在thinkphp5.0路径中实现去除index.php的方式
2024-05-11 09:54:34
Flask 请求钩子的实现
2022-04-25 21:21:12
Python+Pyecharts实现散点图的绘制
2023-09-02 05:01:29
Python实现多属性排序的方法
2021-03-11 02:13:57
Python中shutil模块的学习笔记教程
2022-12-22 20:42:05
PyTorch上搭建简单神经网络实现回归和分类的示例
2022-08-02 04:49:42
一文带你了解Python中的字符串是什么
2021-10-16 06:05:27
使用django的objects.filter()方法匹配多个关键字的方法
2022-04-08 06:11:20
python 对类的成员函数开启线程的方法
2021-09-11 17:12:42
支持汉转拼和拼音分词的PHP中文工具类ChineseUtil
2023-11-08 10:48:13
Jupyter notebook在mac:linux上的配置和远程访问的方法
2023-06-20 06:11:01