程序员人生 网站导航

通过Python处理Android API Doc离线访问

栏目:综合技术时间:2015-04-02 08:58:14

缘由大家应当都知道,离线下载的SDK Api本地也没法打开,其实主要就是由于这些Doc中有去访问google的1些网站:font、js api等等,因此,要真正离线使用Doc,有两个方法可以实现:


1、真实的离线――即把网断掉,这样确切可以,但是,使用起来太不方便了


2、把API Doc中的所有要求font、js api的内容都删掉,不过,这个进程太痛苦了,API Doc有几万个文件,总不能1个个删,所以,祭出Python,秒秒钟弄定,代码以下:

import os s1 = '''<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" title="roboto">''' s2 = '''<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto+Condensed">''' s3 = '''<script type="text/javascript" async="" src="https://apis.google.com/js/plusone.js"></script>''' s4 = '''<script type="text/javascript" async="" src="http://www.google-analytics.com/ga.js"></script>''' for root,dirs,files in os.walk(r'/data/SDK/sdk/docs'): for file in files: fd = root + os.sep + file if ".html" in fd: print fd f = open(fd, 'r') s = f.read().replace(s1, "").replace(s2, "").replace(s3, "").replace(s4, "") f.close() f = open(fd, 'w') f.write(s) f.close()


使用时只要将os.walk的路径修改成doc的路径便可,运行后很快就可以完玉成部的替换,如果碰到某些页面还是打不开,只需要打开源代码,找到访问google的要求加入到脚本中进行替换便可。


以上。

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐