python3实现读取chrome浏览器cookie
2016-06-19 16:59
591 查看
好几年前我在做一些自动化的脚本时,脑子里也闪过这样的想法:能不能直接把浏览器的cookies取出来用呢?
直到昨天看到代码《python模拟发送动弹》,想起来当年我也曾经有类似的想法没能完成,那就优先拿这个练手,之后的代码也会用这个功能。
直接从浏览器中取出cookies,有以下好处和用途:
1、不需要配置用户密码,直接读出浏览器中cookies就得到一样的身份,用来完成各种自动化操作。
2、部分网站登录会更新Session,会导致之前成功登录的Session失效,与浏览器使用相同的Session,不用进行登录操作,不会互相挤下线。
3、全是废话,我不想写了,行吗?
使用到软件的sqlite3的图形管理工具有:
SQLiteDatabaseBrowserPortable https://www.jb51.net/database/251740.html
sqlitespy https://www.jb51.net/database/18390.html
使用到的python库有:
sqlite3 python标准库,不需要下载安装
pywin32 pywin32 windows的API库,让python可以调用各种各样的windows API,代码中用到的win32crypt就是属于pywin32库的一部分。 建议手动下载对应版本pywin32安装 https://www.jb51.net/softs/416136.html https://www.jb51.net/softs/416131.html
requests requests是一个相对比较简单易用的http库,用来代替urllib23之类的标准库,使用命令安装pip install requests
看代码:
import os import sqlite3 import requests from win32.win32crypt import CryptUnprotectData def getcookiefromchrome(host='.oschina.net'): cookiepath=os.environ['LOCALAPPDATA']+r"\Google\Chrome\User Data\Default\Cookies" sql="select host_key,name,encrypted_value from cookies where host_key='%s'" % host with sqlite3.connect(cookiepath) as conn: cu=conn.cursor() cookies={name:CryptUnprotectData(encrypted_value)[1].decode() for host_key,name,encrypted_value in cu.execute(sql).fetchall()} print(cookies) return cookies #运行环境windows 2012 server python3.4 x64 chrome 50 #以下是测试代码 #getcookiefromchrome() #getcookiefromchrome('.baidu.com') url='http://my.oschina.net/' httphead={'User-Agent':'Safari/537.36',} #设置allow_redirects为真,访问http://my.oschina.net/ 可以跟随跳转到个人空间 r=requests.get(url,headers=httphead,cookies=getcookiefromchrome('.oschina.net'),allow_redirects=1) print(r.text)
您可能感兴趣的文章:
- python处理cookie详解
- Python模仿POST提交HTTP数据及使用Cookie值的方法
- 使用Python中的cookielib模拟登录网站
- python使用cookielib库示例分享
- python使用urllib2实现发送带cookie的请求
- Python爬虫利用cookie实现模拟登陆实例详解
- python模拟登录并且保持cookie的方法详解
- 详解Python的Django框架中的Cookie相关处理
- python使用cookie库操保存cookie详解
- 详解Python中的Cookie模块使用
- python cookielib 登录人人网的实现代码
- 玩转python爬虫之cookie使用方法
- 利用selenium 3.7和python3添加cookie模拟登陆的实现
- Python中urllib+urllib2+cookielib模块编写爬虫实战
- Python基于PycURL自动处理cookie的方法
- 在Python中使用cookielib和urllib2配合PyQuery抓取网页信息
- Python使用cookielib模块操作cookie的实例教程
- Python get获取页面cookie代码实例
相关文章推荐
- Python3 入门教程 简单但比较不错
- python3图片转换二进制存入mysql
- python3批量删除豆瓣分组下的好友的实现代码
- linux下python3连接mysql数据库问题
- Python3 能振兴 Python的原因分析
- 在windows系统中实现python3安装lxml
- Python3基础之基本运算符概述
- Python3基础之条件与循环控制实例解析
- Python3实现生成随机密码的方法
- Python3基础之输入和输出实例分析
- Windows下实现Python2和Python3两个版共存的方法
- Python3使用requests包抓取并保存网页源码的方法
- Python3 正在毁灭 Python的原因分析
- Python3连接MySQL(pymysql)模拟转账实现代码
- Python3基础之基本数据类型概述
- Python3基础之函数用法
- 让python同时兼容python2和python3的8个技巧分享
- Python3实现连接SQLite数据库的方法
- python3.3实现乘法表示例
- python3实现域名查询和whois查询功能