Python3使用requests登录人人影视网站的方法


Posted in Python onMay 11, 2016

早就听说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 相关文章推荐
使用Python的Twisted框架编写简单的网络客户端
Apr 16 Python
Python数组定义方法
Apr 13 Python
Windows中安装使用Virtualenv来创建独立Python环境
May 31 Python
Python守护线程用法实例
Jun 23 Python
利用Opencv中Houghline方法实现直线检测
Feb 11 Python
python多线程案例之多任务copy文件完整实例
Oct 29 Python
Python笔记之facade模式
Nov 20 Python
Pytorch自己加载单通道图片用作数据集训练的实例
Jan 18 Python
Python sqlite3查询操作过程解析
Feb 20 Python
python爬虫scrapy基于CrawlSpider类的全站数据爬取示例解析
Feb 20 Python
Pytorch自定义Dataset和DataLoader去除不存在和空数据的操作
Mar 03 Python
利用Python实时获取steam特惠游戏数据
Jun 25 Python
在Django中进行用户注册和邮箱验证的方法
May 09 #Python
Python数据类型详解(三)元祖:tuple
May 08 #Python
Python数据类型详解(二)列表
May 08 #Python
Python数据类型详解(一)字符串
May 08 #Python
Python常用知识点汇总
May 08 #Python
Python对list列表结构中的值进行去重的方法总结
May 07 #Python
Python环境下安装使用异步任务队列包Celery的基础教程
May 07 #Python
You might like
php读取csv实现csv文件下载功能
2013/12/18 PHP
改写ThinkPHP的U方法使其路由下分页正常
2014/07/02 PHP
php可生成缩略图的文件上传类实例
2014/12/17 PHP
php保存任意网络图片到服务器的方法
2015/04/14 PHP
基于jQueryUI和Corethink实现百度的搜索提示功能
2016/11/09 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2017/11/16 PHP
php5.x禁用eval的操作方法
2018/10/19 PHP
php判断/计算闰年的方法小结【三种方法】
2019/07/06 PHP
jquery获得下拉框值的代码
2011/08/13 Javascript
基于jquery自定义图片热区效果
2012/07/21 Javascript
jquery幻灯片插件bxslider样式改进实例
2014/10/15 Javascript
JQuery跳出each循环的方法
2015/04/16 Javascript
使用AngularJS来实现HTML页面嵌套的方法
2015/06/17 Javascript
分享两段简单的JS代码防止SQL注入
2016/04/12 Javascript
浅谈JavaScript中面向对象的的深拷贝和浅拷贝
2016/08/01 Javascript
JS两种类型的表单提交方法实例分析
2016/11/28 Javascript
Angular使用$http.jsonp发送跨站请求的方法
2017/03/16 Javascript
jq checkbox 的全选并ajax传参的实例
2017/04/01 Javascript
JS点击缩略图整屏居中放大图片效果
2017/07/04 Javascript
微信小程序之下拉列表实现方法解析(附完整源码)
2019/08/23 Javascript
Layui tree 下拉菜单树的实例代码
2019/09/21 Javascript
jquery+css3实现的经典弹出层效果示例
2020/05/16 jQuery
[01:07:19]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第一场
2018/04/06 DOTA
[01:02:26]DOTA2-DPC中国联赛 正赛 SAG vs RNG BO3 第二场 1月18日
2021/03/11 DOTA
R语言 vs Python对比:数据分析哪家强?
2017/11/17 Python
解决python爬虫中有中文的url问题
2018/05/11 Python
python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解
2020/02/11 Python
Python 面向对象部分知识点小结
2020/03/09 Python
keras训练浅层卷积网络并保存和加载模型实例
2020/07/02 Python
美国市场上最实惠的送餐服务:Dinnerly
2018/03/18 全球购物
C# Debug和Testing相关面试题
2015/10/25 面试题
英语系毕业生自荐信
2013/10/31 职场文书
关于感恩的演讲稿800字
2014/08/26 职场文书
护士年终考核评语
2014/12/31 职场文书
仰望星空观后感
2015/06/10 职场文书
门面租赁合同范文
2019/08/06 职场文书