python读取Android permission文件


Posted in Python onNovember 01, 2013

今天用python解析一个文本文件,格式如下:

[
    {
        "Key":"android.permission.ACCESS_CHECKIN_PROPERTIES",
        "Title":"访问检入属性",
        "Memo":"允许对检入服务上传的属性进行读/写访问。普通应用程序不能使用此权限。",
        "Level":0
    },
    {
        "Key":"android.permission.ACCESS_COARSE_LOCATION",
        "Title":"大概位置",
        "Memo":"访问大概的位置源(例如蜂窝网络数据库)以确定手机的大概位置(如果可以)。恶意应用程序可借此确定您所处的大概位置。",
        "Level":1
    },
    {
        "Key":"android.permission.ACCESS_COARSE_LOCATION",
        "Title":"大概位置",
        "Memo":"访问大概的位置源(例如蜂窝网络数据库)以确定手机的大概位置(如果可以)。恶意应用程序可借此确定您所处的大概位置。",
        "Level":1
    }
]

开始采用open('filepath').readlines()的方法读取,这样读取的内容都存取到一个列表中,但是我要取每一个{}中的内容取不到,于是考虑用split(',')的方法分离开来,结果把每一个{}里面的内容也根据","分开了。后来请教了网友,说用json方式读取。于是采用以下方式:
#-*-encoding:utf-8-*-
import json
f = file(r'C:\Users\Tim\Desktop\test.json')
jsonobj = json.load(f)
#列表用序号来查询
print jsonobj[0]['Memo']
f.close

运行之后报以下错误:
ValueError: No JSON object could be decoded
重新将json文件以UTF8无BOM方式保存了一下,运行成功了。另外,对于读取json string可以用以下方式:
s = json.loads('{"name":"test", "type":{"name":"seq", "parameter":["1", "2"]}}')
print s
print s.keys()
print s["name"]
print s["type"]["name"]
print s["type"]["parameter"][1]

下面给出完整的读取permission文件的代码:
#-*-coding:utf8-*-
import json
import codecs
def getperinfo(inputper):
    f = file(r'C:\Users\Tim\Desktop\test.json')
    jsonobj = json.load(f)
    #print jsonobj[0]['Memo']
    for permission in jsonobj:
        #permission.values()获取词典的值
        if permission.values()[2] == inputper:
            print "permission name:%s\npermission info:%s" %(permission.values()[3],permission.values()[0])
    f.close
if __name__ == '__main__':
    #optparse采用预先定义好的选项来解析命令行参数,optparse默认就是解析命令行参数的。
    from optparse import OptionParser
    parser = OptionParser()
    parser.add_option("-p", "--permission", dest="permission",help="input permission")
    (options, args) = parser.parse_args()
    #options.permission为输入的permission
    getperinfo(options.permission)

执行示例如下:
python读取Android permission文件
Python 相关文章推荐
Python time模块详解(常用函数实例讲解,非常好)
Apr 24 Python
Python中的__new__与__init__魔术方法理解笔记
Nov 08 Python
CentOS 7下Python 2.7升级至Python3.6.1的实战教程
Jul 06 Python
Request的中断和ErrorHandler实例解析
Feb 12 Python
Python从Excel中读取日期一列的方法
Nov 28 Python
解决PyCharm控制台输出乱码的问题
Jan 16 Python
python和c语言的主要区别总结
Jul 07 Python
Python 分享10个PyCharm技巧
Jul 13 Python
Python爬虫实现“盗取”微信好友信息的方法分析
Sep 16 Python
python使用numpy中的size()函数实例用法详解
Jan 29 Python
Python3.9.0 a1安装pygame出错解决全过程(小结)
Feb 02 Python
Python first-order-model实现让照片动起来
Jun 25 Python
Python读写Excel文件的实例
Nov 01 #Python
Python修改Excel数据的实例代码
Nov 01 #Python
Python获取apk文件URL地址实例
Nov 01 #Python
Python urllib模块urlopen()与urlretrieve()详解
Nov 01 #Python
Python ZipFile模块详解
Nov 01 #Python
python标准日志模块logging的使用方法
Nov 01 #Python
python类定义的讲解
Nov 01 #Python
You might like
如何使用php判断所处服务器操作系统的类型
2013/06/20 PHP
PHP网站开发中常用的8个小技巧
2015/02/13 PHP
php获取、检查类名、函数名、方法名的函数方法
2015/06/25 PHP
php基于jquery的ajax技术传递json数据简单实例
2016/04/15 PHP
Yii2创建控制器(createController)方法详解
2016/07/23 PHP
[原创]php使用strpos判断字符串中数字类型子字符串出错的解决方法
2017/04/01 PHP
使用PHPExcel实现数据批量导出为excel表格的方法(必看)
2017/06/09 PHP
Laravel框架路由管理简单示例
2019/05/07 PHP
javascript 在网页中的运用(asp.net)
2009/11/23 Javascript
基于jquery实现后台左侧菜单点击上下滑动显示
2013/04/11 Javascript
为开发者准备的10款最好的jQuery日历插件
2014/02/04 Javascript
javascript获取函数名称、函数参数、对象属性名称的代码实例
2014/04/12 Javascript
再JavaScript的jQuery库中编写动画效果的指南
2015/08/13 Javascript
JS正则子匹配实例分析
2016/12/22 Javascript
bootstrap 模态框(modal)实现水平垂直居中显示
2017/01/23 Javascript
JS简单验证上传文件类型的方法
2017/04/17 Javascript
vue弹窗组件使用方法
2018/04/28 Javascript
Vue函数式组件-你值得拥有
2019/05/09 Javascript
MockJs结合json-server模拟后台数据
2020/08/26 Javascript
小程序接口的promise化的实现方法
2019/12/11 Javascript
jQuery+Ajax+js实现请求json格式数据并渲染到html页面操作示例
2020/06/02 jQuery
基于JS实现快速读取TXT文件
2020/08/25 Javascript
Python去掉字符串中空格的方法
2014/03/11 Python
python使用pymysql实现操作mysql
2016/09/13 Python
python获取外网IP并发邮件的实现方法
2017/10/01 Python
Centos7 下安装最新的python3.8
2019/10/28 Python
Python小白垃圾回收机制入门
2020/06/09 Python
如何利用pycharm进行代码更新比较
2020/11/04 Python
泰国汽车、火车和轮渡票预订网站:Bus Online Ticket
2017/09/09 全球购物
如何转换一个字符串到enum值
2014/04/12 面试题
2014自主招生自荐信策略
2014/01/27 职场文书
教师校本培训方案
2014/02/26 职场文书
幼儿园开学寄语
2014/04/03 职场文书
争先创优演讲稿
2014/09/15 职场文书
邀请函的格式
2015/01/30 职场文书
鲁滨逊漂流记读书笔记
2015/06/26 职场文书