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操作MySQL数据库具体方法
Oct 28 Python
在Python的Flask框架中验证注册用户的Email的方法
Sep 02 Python
Python正则表达式完全指南
May 25 Python
python密码错误三次锁定(实例讲解)
Nov 14 Python
Python爬虫天气预报实例详解(小白入门)
Jan 24 Python
Django如何实现网站注册用户邮箱验证功能
Aug 14 Python
python 并发编程 阻塞IO模型原理解析
Aug 20 Python
python opencv 检测移动物体并截图保存实例
Mar 10 Python
python pandas.DataFrame.loc函数使用详解
Mar 26 Python
python爬虫scrapy基于CrawlSpider类的全站数据爬取示例解析
Feb 20 Python
Python音乐爬虫完美绕过反爬
Aug 30 Python
Python Django项目和应用的创建详解
Nov 27 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
法国:浪漫之都的咖啡文化
2021/03/03 咖啡文化
PHP&MYSQL服务器配置说明
2006/10/09 PHP
PHP聊天室技术
2006/10/09 PHP
PHP伪静态写法附代码
2008/06/20 PHP
不要轻信 PHP_SELF的安全问题
2009/09/05 PHP
PHP获取mysql数据表的字段名称和详细信息的方法
2014/09/27 PHP
php fread读取文件注意事项
2016/09/24 PHP
thinkPHP自动验证机制详解
2016/12/05 PHP
PHP实现的简单排列组合算法应用示例
2017/06/20 PHP
javascript中的prototype属性使用说明(函数功能扩展)
2010/08/16 Javascript
jQuery EasyUI API 中文文档 - Form表单
2011/10/06 Javascript
一个简单的瀑布流效果(主体形式自写)
2013/05/27 Javascript
js实现匹配时换色的输入提示特效代码
2015/08/17 Javascript
微信小程序 合法域名校验出错详解及解决办法
2017/03/09 Javascript
使用Bootstrap打造特色进度条效果
2017/05/02 Javascript
Vue.js实例方法之生命周期详解
2017/07/03 Javascript
详解Vue CLI3配置之filenameHashing使用和源码设计使用和源码设计
2018/08/31 Javascript
python解析xml文件实例分享
2013/12/04 Python
python中的函数用法入门教程
2014/09/02 Python
Python数据分析之双色球统计单个红和蓝球哪个比例高的方法
2018/02/03 Python
基于Python中numpy数组的合并实例讲解
2018/04/04 Python
Python将一个CSV文件里的数据追加到另一个CSV文件的方法
2018/07/04 Python
在python 不同时区之间的差值与转换方法
2019/01/14 Python
python2爬取百度贴吧指定关键字和图片代码实例
2019/08/14 Python
解决virtualenv -p python3 venv报错的问题
2021/02/05 Python
html5 canvas实现跟随鼠标旋转的箭头
2016/03/11 HTML / CSS
澳大利亚领先的亚麻品牌:Bed Threads
2019/12/16 全球购物
EntityManager都有哪些方法
2013/11/01 面试题
入党积极分子对十八届四中全会期盼的思想汇报
2014/10/17 职场文书
年度考核个人总结
2015/03/06 职场文书
刑事案件上诉状
2015/05/23 职场文书
小学英语课教学反思
2016/02/15 职场文书
导游词之峨眉乐山/兵马俑/北京故宫御花园
2019/09/03 职场文书
奇妙的 CSS shapes(CSS图形)
2021/04/05 HTML / CSS
MongoDB安装使用并实现Python操作数据库
2021/06/28 MongoDB
【海涛教你打DOTA】黑鸟第一视角解说
2022/04/01 DOTA