Python工具火狐扩展打包,python火狐打包,这是一个关于火狐扩展打包
Python工具火狐扩展打包,python火狐打包,这是一个关于火狐扩展打包
这是一个关于火狐扩展打包工具的python源码。
需要做的是:读取配置文件的扩展名、版本号并且过滤版本工具、开发工具产生的目录和文件。最后一项是,要压缩打包成一个符合规范的xpi文件。
需要的环境是:ubuntu、python2.7 测试通过 。window应该也行,没做测试。
下面是执行chmod +x filename 命令变成可执行文件,Python工具火狐扩展打包源码:
#!/usr/bin/python# -*- coding: UTF-8 -*-# packaging of firefox add-on and studing python## usage: put this file to addon folder. # double click or running in the shell # last edited: Dec. 2011from shutil import ignore_patterns, rmtree ,copytreeimport os, tempfile, os.path as osp,re, zipfiledef packaging(src):"""reading install.rdf and packaging a xpi file. for example: xxx-0.1.xpi"""work_copy = osp.dirname(src)addon_info = "".join(open(work_copy + osp.sep + "install.rdf"))addon_name = re.search("(?<=em\:name\=\").*(?=\")",addon_info).group(0)addon_version = re.search("(?<=em\:version\=\").*(?=\")",addon_info).group(0)temp_copy_base = tempfile.mkdtemp()temp_copy = osp.join(temp_copy_base,addon_name)xpi_name = "%s-%s.xpi" % (addon_name,addon_version)xpi_fullpath = osp.join(work_copy,xpi_name);print """Add-on : %sVersion : %sWork Copy : %sTemp Copy : %sXPI File : %s""" % (addon_name,addon_version,work_copy,temp_copy, xpi_name)print "copying work to temp dir..."copytree(work_copy,temp_copy,ignore=ignore_patterns('*.xpi','.*','*.bat','*.py','*LOG','*~','*.swp'))print "packaging xpi..."compress(temp_copy,xpi_fullpath);print "cleaning..."rmtree(temp_copy_base)#www.iplaypy.comdef compress(src,dstfile):"""compressing src to dstfile"""afile = zipfile.ZipFile(dstfile,"w",zipfile.ZIP_DEFLATED)for root,dirs,files in os.walk(src):for filename in files:abspath = osp.join(root,filename)relpath = osp.relpath(abspath,src)afile.write(abspath, relpath)if __name__ == "__main__":packaging(__file__)
编橙之家文章,
相关内容
- Python3.2完成简单文件搜索的代码,python3.2搜索代码,这是
- Python字典方法查询数据示例,python字典,Python学习到py
- python解析读取ip区域信息,python解析ip区域,如下代码使
- Python抓取关键词代码片段,,用python来做数据抓
- python正则过滤文件指定邮箱地址的方法,python邮箱地址
- python实现whois查询功能的方法,python实现whois查询,今天
- Base64码转换的python实现源码,base64python,为了方便测试时
- 用scp备份openstack的instance镜像方法,scpopenstack,以下pyt
- Python xlrd方法实现excel数据查找提取保存操作,pythonxl
- web.py能条件判断的页面执行计时方法,web.py计时,编橙之
评论关闭