Python的HTML文檔解析 tagparser

jopen 13年前發布 | 23K 次閱讀 Python HTML操作類庫

很多人需要提取網頁的一些內容, 可以利用正則表達式提取,也可以用beautifulsoap等工具. 正則表達式方法速度快,缺點是不好找到匹配的正則. 其他類似beautiful的工具因為要全面分析html,而html不像xml那么嚴格,語法比較復雜所以效率很糟糕.這個工具就是為了處里這種問題 的.

這個工程只有一個文件 .tagparser.py 它可以方便分析像xml html 等這種標記語言. 只要他是'<'和'>'括起來的標記語言.

分析的方式是'抽'式的.也就是說掃描一個個字符 當遇到一個tag時 也就是遇到一個<>的時候,回調一個函數onGetTag() ,可以重載這個函數做自己的處理.

如遇到

回調 onGetTag(tagstr, tagstro). tagstr = p tagstro = P tagstr 是小寫的tag tagstro是源文件的大小寫狀態

遇到內容 回調 onGetTxt(txtstr) , txtstr是 如:<tag>xxxxxxxxx</tag> xxxxx即內容

使用例子,提取網易新聞頁的主要內容,新聞 標題,內容主體: 例如:

p = TagParser() p.fetchUrl('http://news.163.com/09/0117/04/4VR79MP60001124J.html') p.printResult()

輸出一個網頁的新聞.

項目主頁:http://www.baiduhome.net/lib/view/home/1324431980577

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!