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
  • asp之家 网络编程 m.aspxhome.com