分享一個處理Google API 開發文檔的小工具,可避開讨厭的龜速加載過程或必須斷網檢視的麻煩,最近學習Python,是以就用它寫了個文本處理腳本.
大緻思路:
1.找出docs中加載耗時的資源請求連結,Chrome中F12打開,檢視Network項(按時間篩選),當然不是所有耗時連結都得删除的(web小白也不懂),複制請求包含的連結,然後在網頁源碼中搜尋.複制需要删除的代碼塊.添加到Python腳本中.
2.使用Python周遊替換掉所有包含上述代碼塊的文檔内容.
(把文檔的外部鍊入的css樣式去掉了,斷網能用,要這個幹嘛?于是乎咔!其它能删的有待網友補充了.)
#coding=utf-8
import os
#輸入檔案路勁
fpath = raw_input('Input Android.docs path:')
#需要删除的代碼塊添加到maps内,做為key,value值為空""
maps={
'<li><a href="https://play.google.com/apps/publish/" target="_blank" rel="external nofollow" target="_googleplay">Google Play Developer Console</a></li>':"",
'<li><a href="http://android-developers.blogspot.com/" target="_blank" rel="external nofollow" >Android Developers Blog</a></li>':"",
'''<link rel="stylesheet"
href="http://fonts.googleapis.com/css?family=Roboto+Condensed" target="_blank" rel="external nofollow" target="_blank" rel="external nofollow" >''':"",
'<script src="http://www.google.com/jsapi" type="text/javascript"></script>':"",
'''<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" target="_blank" rel="external nofollow"
title="roboto">''':"",
'''<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto+Condensed" target="_blank" rel="external nofollow" target="_blank" rel="external nofollow" >''':"",
'''<script type="text/javascript" async="" src="https://apis.google.com/js/plusone.js"></script>''':"",
'''<script type="text/javascript" async="" src="http://www.google-analytics.com/ga.js"></script>''':"",
'''<li><a href="http://www.android.com" target="_blank" rel="external nofollow" >Android.com</a></li>''':"",
'''<li><a href="http://source.android.com" target="_blank" rel="external nofollow" >Android Open Source Project</a></li>''':"",
'''<script src="https://developer.android.com/ytblogger_lists_unified.js" type="text/javascript"></script>''':""
}
#記錄處理的文檔個數
#i = 1
for root,dirs,files in os.walk(fpath):
for file in files:
fd = root + os.sep + file
if ".html" in fd:
#print fd ,'-->',i
#i+=1
with open(fd, 'r+') as f:
text = f.read()
for j in maps:
text = text.replace(j,keys[j])
with open(fd, 'w') as f:
f.write(text)