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 相关文章推荐
Django1.3添加app提示模块不存在的解决方法
Aug 26 Python
小小聊天室Python代码实现
Aug 17 Python
用Python实现随机森林算法的示例
Aug 24 Python
Python中sort和sorted函数代码解析
Jan 25 Python
浅谈pandas中DataFrame关于显示值省略的解决方法
Apr 08 Python
Python实现爬虫从网络上下载文档的实例代码
Jun 13 Python
Python 实现文件打包、上传与校验的方法
Feb 13 Python
python Dijkstra算法实现最短路径问题的方法
Sep 19 Python
python中设置超时跳过,超时退出的方式
Dec 13 Python
基于Python 的语音重采样函数解析
Jul 06 Python
Python脚本实现Zabbix多行日志监控过程解析
Aug 26 Python
python中的被动信息搜集
Apr 29 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
PHP URL地址获取函数代码(端口等) 推荐
2010/05/15 PHP
php数据库连接时容易出错的特殊符号问题
2010/09/01 PHP
ThinkPHP登录功能的实现方法
2014/08/20 PHP
PHP获取数组的键与值方法小结
2015/06/13 PHP
Zend Framework教程之请求对象的封装Zend_Controller_Request实例详解
2016/03/07 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
php接口隔离原则实例分析
2019/11/11 PHP
js常用函数 不错
2006/09/08 Javascript
重构Javascript代码示例(重构前后对比)
2013/01/23 Javascript
window.showModalDialog()返回值的学习心得总结
2014/01/07 Javascript
addEventListener 的用法示例介绍
2014/05/07 Javascript
javascript数据结构与算法之检索算法
2015/04/04 Javascript
3个可以改善用户体验的AngularJS指令介绍
2015/06/18 Javascript
SWFObject基本用法实例分析
2015/07/20 Javascript
学习JavaScript设计模式(单例模式)
2015/11/26 Javascript
Bootstrap响应式侧边栏改进版
2016/09/17 Javascript
利用JS屏蔽页面中的Enter按键提交表单的方法
2016/11/25 Javascript
javascript基本数据类型及类型检测常用方法小结
2016/12/14 Javascript
JS实现的简单图片切换功能示例【测试可用】
2017/02/14 Javascript
微信小程序封装多张图片上传api代码实例
2019/12/30 Javascript
vue项目实现设置根据路由高亮对应的菜单项操作
2020/08/06 Javascript
[01:17]炒鸡美酒第四天TA暴走
2018/06/05 DOTA
python批量导出导入MySQL用户的方法
2013/11/15 Python
Python 3.x 新特性及10大变化
2015/06/12 Python
Python 输入一个数字判断成绩分数等级的方法
2018/11/15 Python
Python中的字符串切片(截取字符串)的详解
2019/05/15 Python
pytorch ImageFolder的覆写实例
2020/02/20 Python
Matplotlib 折线图plot()所有用法详解
2020/07/28 Python
Linux上比较文件的命令都有哪些
2013/09/28 面试题
师范生实习自我鉴定
2013/11/01 职场文书
四年的大学生生活自我评价
2013/12/09 职场文书
事假请假条范文
2014/04/11 职场文书
幼儿园师德演讲稿
2014/05/06 职场文书
自荐信格式范文
2015/03/04 职场文书
个人自荐书范文
2015/03/09 职场文书
美容院员工规章制度
2015/08/05 职场文书