qpython3 读取安卓lastpass Cookies


Posted in Python onJune 19, 2016

之前我的博客写了python读取windows chrome Cookies,沿着同样的思路,这次本来想尝试读取安卓chrome Cookies,

但是可能是chrome的sqlite3版本比较高失败了,so改成读取lastpass 的Cookies。

背景介绍:

qpython3 是一个基于sl4a实现的能让python3跑在安卓手机上集成环境。

lastpass 是一个密码管理器,安卓版lastpass 内置了一个web浏览器。经分析lastpass的Cookies的表名,字段名与chrome一样,且value明文存储不加密。

requests 是一个python 第三方http库,qpython3中集成了。

sqlite3 是一个嵌入式数据库,很多软件和APP用到了sqlite。比如chrome lastpass浏览器用来存储cookies和访问记录之类的信息。

由于找不到好的方法让python代码以root权限读取其它APP数据的方法,

于是采用调用命令su -c cp 的方法直接把文件拷贝到SD卡再读取。

以下代码是qpython3下读出lastpass cookies并成功用于发送博客园闪存的例子:

运行环境 qpython3 安卓4.4 必须root 手机索尼L39H 安卓版lastpass,运行前需要在lastpass中登录一次博客园。

#-*-coding:utf8;-*-
#qpy:3
#qpy:console
import sqlite3
import os
import requests
from random import random
#path='/data/data/com.android.chrome/app_chrome/Default/Cookies'
path='/data/user/0/com.lastpass.lpandroid/app_webview/Cookies'
sd="/sdcard"

def sucp(source,dest):
  os.system("su -c cp -f %s %s" % ( source , dest ) )

def getcookies(host):  
  sql="select host_key,name,value from Cookies where host_key= '%s'" % host
  cu=sqlite3.connect('/sdcard/Cookies').cursor()
  result=cu.execute(sql).fetchall()
  cookies={name:value for host_key,name,value in result}
  cu.close()
  print(cookies)
  return cookies

sucp(path,sd)#用root权限拷贝文件到sd卡目录下

#以下代码用来发送博客园闪存
url="http://ing.cnblogs.com/ajax/Ing/MobileIngSubmit"
httphead={'User-Agegnt':'Safari/537.36',}
data={"content":"来自qpython3 发送的闪存 %s" % random(),"publicFlag":1}

res=requests.post(url,headers=httphead,data=data,cookies=getcookies('.cnblogs.com')).text
print(res)

另一个反向思路的应用是可以实现程序用帐号密码登录成功后,把Cookies信息写到用户浏览器的Cookies文件里,这样可以不需要手动输入帐号密码。

或者也可以实现一个浏览器的cookies导入到另一个浏览器里。→_→或者同步?

Python 相关文章推荐
Python中下划线的使用方法
Mar 27 Python
利用python代码写的12306订票代码
Dec 20 Python
在django中使用自定义标签实现分页功能
Jul 04 Python
Python排序算法实例代码
Aug 10 Python
详解python上传文件和字符到PHP服务器
Nov 24 Python
python基础教程项目三之万能的XML
Apr 02 Python
详解用TensorFlow实现逻辑回归算法
May 02 Python
python3实现windows下同名进程监控
Jun 21 Python
python 输入一个数n,求n个数求乘或求和的实例
Nov 13 Python
基于python计算并显示日间、星期客流高峰
May 07 Python
scrapy利用selenium爬取豆瓣阅读的全步骤
Sep 20 Python
如何用Python编写一个电子考勤系统
Feb 08 Python
python3实现读取chrome浏览器cookie
Jun 19 #Python
python3 实现的人人影视网站自动签到
Jun 19 #Python
python3实现暴力穷举博客园密码
Jun 19 #Python
在阿里云服务器上配置CentOS+Nginx+Python+Flask环境
Jun 18 #Python
Python中使用装饰器来优化尾递归的示例
Jun 18 #Python
举例讲解Python面向对象编程中类的继承
Jun 17 #Python
浅谈python为什么不需要三目运算符和switch
Jun 17 #Python
You might like
YII框架中搜索分页jQuery写法详解
2016/12/19 PHP
PHP设计模式之装饰器模式实例详解
2018/02/07 PHP
PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例
2019/02/25 PHP
AJAX架构之Dojo篇
2007/04/10 Javascript
jquery ajax属性async(同步异步)示例
2013/11/05 Javascript
jquery实现简易的移动端验证表单
2015/11/08 Javascript
JS 终止执行的实现方法
2016/11/24 Javascript
JavaScript 实现 Tab 点击切换实例代码
2017/03/25 Javascript
React Native 通告消息竖向轮播组件的封装
2020/08/25 Javascript
如何在vue里添加好看的lottie动画
2018/08/02 Javascript
trackingjs+websocket+百度人脸识别API实现人脸签到
2018/11/26 Javascript
微信小程序实现手势滑动效果
2019/08/26 Javascript
微信小程序点击按钮动态切换input的disabled禁用/启用状态功能
2020/03/07 Javascript
vue+echarts实现动态折线图的方法与注意
2020/09/01 Javascript
js实现网页随机验证码
2020/10/19 Javascript
详解uniapp的全局变量实现方式
2021/01/11 Javascript
[44:40]Serenity vs Pain 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
python打印异常信息的两种实现方式
2019/12/24 Python
Python TCPServer 多线程多客户端通信的实现
2019/12/31 Python
使用PyTorch将文件夹下的图片分为训练集和验证集实例
2020/01/08 Python
tensorflow 实现数据类型转换
2020/02/17 Python
python GUI库图形界面开发之PyQt5多线程中信号与槽的详细使用方法与实例
2020/03/08 Python
彻底搞懂python 迭代器和生成器
2020/09/07 Python
使用豆瓣源来安装python中的第三方库方法
2021/01/26 Python
如何用H5实现一个触屏版的轮播器的实例
2017/01/09 HTML / CSS
澳大利亚制造的羊皮靴:Original UGG Boots
2017/11/13 全球购物
台湾演唱会订票网站:StubHub台湾
2019/06/11 全球购物
Notino瑞典:购买香水和美容产品
2019/07/26 全球购物
网上开店必备创业计划书
2014/01/26 职场文书
市场部管理制度
2014/02/02 职场文书
物流专业专科生职业生涯规划书
2014/09/14 职场文书
出生医学证明书
2014/09/15 职场文书
工作骂脏话检讨书
2014/10/05 职场文书
葬礼主持词
2015/07/02 职场文书
创业计划书之便利店
2019/09/05 职场文书
解决Vue+SpringBoot+Shiro跨域问题
2021/06/09 Vue.js