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实现统计给定列表中指定数字出现次数的方法
Apr 11 Python
Python smtplib实现发送邮件功能
May 22 Python
python 多线程将大文件分开下载后在合并的实例
Nov 09 Python
python列表,字典,元组简单用法示例
Jul 11 Python
你还在@微信官方?聊聊Python生成你想要的微信头像
Sep 25 Python
python能做什么 python的含义
Oct 12 Python
django 实现手动存储文件到model的FileField
Mar 30 Python
python怎么删除缓存文件
Jul 19 Python
python程序实现BTC(比特币)挖矿的完整代码
Jan 20 Python
python 基于opencv去除图片阴影
Jan 26 Python
python如何做代码性能分析
Apr 26 Python
Python中的xlrd模块使用整理
Jun 15 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 采集书并合成txt格式的实现代码
2009/03/01 PHP
解析php中的fopen()函数用打开文件模式说明
2013/06/20 PHP
PHP和JavaScrip分别获取关联数组的键值示例代码
2013/09/16 PHP
Codeigniter发送邮件的方法
2015/03/19 PHP
Symfony学习十分钟入门经典教程
2016/02/03 PHP
关于Yii中模型场景的一些简单介绍
2019/09/22 PHP
javascript之解决IE下不渲染的bug
2007/06/29 Javascript
在vs2010中调试javascript代码方法
2011/02/11 Javascript
JS实现为排序好的字符串找出重复行的方法
2016/03/02 Javascript
Atitit.js的键盘按键事件捆绑and事件调度
2016/04/01 Javascript
谈谈JavaScript的New关键字
2016/08/26 Javascript
jQuery在ie6下无法设置select选中的解决方法详解
2016/09/20 Javascript
作为老司机使用 React 总结的 11 个经验教训
2017/04/08 Javascript
vue 2.0项目中如何引入element-ui详解
2017/09/06 Javascript
浅谈vue路径优化之resolve
2017/10/13 Javascript
NodeJs form-data格式传输文件的方法
2017/12/13 NodeJs
vue组件jsx语法的具体使用
2018/05/21 Javascript
D3.js实现拓扑图的示例代码
2018/06/30 Javascript
vue搜索和vue模糊搜索代码实例
2019/05/07 Javascript
JS精确判断数据类型代码实例
2019/12/18 Javascript
vue data变量相互赋值后被实时同步的解决步骤
2020/08/05 Javascript
Python单元测试框架unittest使用方法讲解
2015/04/13 Python
Python编程实现输入某年某月某日计算出这一天是该年第几天的方法
2017/04/18 Python
python Tcp协议发送和接收信息的例子
2019/07/22 Python
在Python中实现字典反转案例
2020/12/05 Python
尤妮佳moony海外旗舰店:日本殿堂级纸尿裤品牌
2018/02/23 全球购物
Farfetch中文官网:奢侈品牌时尚购物平台
2020/03/15 全球购物
vue+django实现下载文件的示例
2021/03/24 Vue.js
园长自我鉴定
2013/10/06 职场文书
工程开工庆典邀请函
2014/02/01 职场文书
戒毒悔改检讨书
2014/09/21 职场文书
作风整顿剖析材料
2014/09/30 职场文书
法定代表人授权委托书格式
2014/10/14 职场文书
个人党性锻炼总结
2015/03/05 职场文书
事业单位财务人员岗位职责
2015/04/14 职场文书
Python实现随机生成迷宫并自动寻路
2021/06/13 Python