缘由大家应当都知道,离线下载的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的要求加入到脚本中进行替换便可。
以上。