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实现字符串反转的常用方法分析【4种方法】
Sep 30 Python
Python tornado队列示例-一个并发web爬虫代码分享
Jan 09 Python
Python实现的计算器功能示例
Apr 26 Python
PyQt5 多窗口连接实例
Jun 19 Python
django连接oracle时setting 配置方法
Aug 29 Python
浅谈tensorflow之内存暴涨问题
Feb 05 Python
ubuntu 安装pyqt5和卸载pyQt5的方法
Mar 24 Python
利用Python实现Excel的文件间的数据匹配功能
Jun 16 Python
Python类的继承super相关原理解析
Oct 22 Python
python读取excel数据并且画图的实现示例
Feb 08 Python
python中如何对多变量连续赋值
Jun 03 Python
Python3中最常用的5种线程锁实例总结
Jul 07 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 删除无限级目录与文件代码共享
2008/11/22 PHP
ThinkPHP实现非标准名称数据表快速创建模型的方法
2014/11/29 PHP
YII Framework框架教程之缓存用法详解
2016/03/14 PHP
浅析Yii2 gridview实现批量删除教程
2016/04/22 PHP
详解ThinkPHP3.2.3验证码显示、刷新、校验
2016/12/29 PHP
javascript函数库-集合框架
2007/04/27 Javascript
jquery win 7透明弹出层效果的简单代码
2013/08/06 Javascript
验证控件与Button的OnClientClick事件详细解析
2013/12/04 Javascript
java中String类型变量的赋值问题介绍
2016/03/23 Javascript
详解vue-router 2.0 常用基础知识点之router-link
2017/05/10 Javascript
JS查找数组中重复元素的方法详解
2017/06/14 Javascript
彻底搞懂JavaScript中的apply和call方法(必看)
2017/09/18 Javascript
vuejs使用$emit和$on进行组件之间的传值的示例
2017/10/04 Javascript
jQuery点击页面其他部分隐藏下拉菜单功能
2018/11/27 jQuery
深入理解 JS 垃圾回收
2019/06/03 Javascript
vue中使用[provide/inject]实现页面reload的方法
2019/09/30 Javascript
如何优雅地取消 JavaScript 异步任务
2020/03/22 Javascript
全网小程序接口请求封装实例代码
2020/11/06 Javascript
vue element实现表格合并行数据
2020/11/30 Vue.js
python获取Linux下文件版本信息、公司名和产品名的方法
2014/10/05 Python
Python中的with...as用法介绍
2015/05/28 Python
Python使用cookielib模块操作cookie的实例教程
2016/07/12 Python
python3 实现爬取TOP500的音乐信息并存储到mongoDB数据库中
2019/08/24 Python
python函数enumerate,operator和Counter使用技巧实例小结
2020/02/22 Python
Pytorch实现将模型的所有参数的梯度清0
2020/06/24 Python
基于python爬取梨视频实现过程解析
2020/11/09 Python
台湾深度自由行旅游平台:Tripbaa趣吧
2017/10/10 全球购物
Kingsoft金山公司C/C++笔试题
2016/05/10 面试题
什么是会话Bean
2015/05/14 面试题
《她是我的朋友》教学反思
2014/04/26 职场文书
工会换届选举方案
2014/05/21 职场文书
社区党建工作汇报材料
2014/10/27 职场文书
教师党的群众路线学习心得体会
2014/11/04 职场文书
实习单位证明范例
2014/11/17 职场文书
中秋节随笔
2015/08/15 职场文书
redis 查看所有的key方式
2021/05/07 Redis