看板 Python 關於我們 聯絡資訊
最近幾日在做爬蟲網頁,步驟如下: Step1輸入網址 Step2擷取網頁 Step3去html碼(text cleaning) 我的目標是取得網頁內文,後分析,例如,切出網頁內文前十常出現的字詞。 唯獨去html碼(text cleaning)一直讓我頭痛,我使用正規化去銷html碼,如下所示 import re TAG_RE = re.compile(r'<[^>]+>') def remove_tags(text): return TAG_RE.sub('', text) 如果只有一兩個網頁,效果不錯,因為我可以手動檢查網頁是否有內文,而不是入口網站 ya 我想請問幾個觀念 1. 使用正規化去除html碼是足夠有效的嗎? 2. 當一次面對上百筆網頁時,是前期step1時就要先(手動或自動)分析好網頁,去 除? 3. 還是想打聽,大家都是怎麼處理這方面的問題 -- Sent from my Windows -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.140.224.116 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1459747552.A.3BB.html
yeh6: BeautifulSoup?04/04 13:54
yeh6: BeautifulSoup?04/04 13:54
感謝提供,之前推文是我功課不足,還請見諒
uranusjr: 如果不想另外裝東西, 你需求內建的 html parser 就夠了04/04 14:07
※ 編輯: busystudent (223.140.224.116), 04/04/2016 14:47:23 感謝提醒,我馬上去 找相關資料,謝謝 ※ 編輯: busystudent (223.140.224.116), 04/04/2016 14:48:32
htc812: 不太懂你意思耶,但我用bs4.getText方法來去除tag覺得還蠻04/05 00:32
htc812: 好用的呀04/05 00:32
馬上找相關資料,感謝 ※ 編輯: busystudent (223.140.224.116), 04/05/2016 10:32:21
PRAM: 所以你還不知道怎麼用beautifulsoup就回推文了嗎?04/05 16:32
Sorry BeautifulSoup 我還以為只有指定位置抓內文的功能,去查才知道自己功課做不足,觀點不對 ※ 編輯: busystudent (223.140.224.116), 04/05/2016 17:09:53 ※ 編輯: busystudent (223.140.224.116), 04/05/2016 17:11:55 ※ 編輯: busystudent (223.140.224.116), 04/05/2016 17:24:31
gozule: lxml也很好用,可以試試 04/05 18:03
aweimeow: 推 lxml 我也習慣用 lxml 來做 04/05 23:43
s860134: 我也喜歡用 lxml 04/07 01:18
paoju5566: 自從用了lxml考試都考100分 04/09 02:40