python關於xpath的一個問題:如何提取某標籤下所有內容?
12-28
在下是爬蟲新手,有一百種方法讓我搞不明白。
如圖的網站結構,用xpath提取紅框里的文字部分:
「居家養老成未來主要模式 仍有障礙需跨越」我用這個語句:
xpath("//div[@class="result" and @id="3"]/h3/a/text()
爬出來的文字就把「養老」兩個字給丟了:
「居家成未來主要模式 仍有障礙需跨越」有什麼辦法可以把所有文字都爬出來
a -&> [a|a/em]
剛也遇到,找了好久,才找到有用的,
HTML XPath: Extracting text mixed in with multiple tags?
string(//a)
只要用string函數把節點包起來就可以了,
過濾多餘標籤:string(.)
.xpath("//a")[0].xpath("string(.)").replace("
","").replace(" ","")
樓主,給你推薦BeautifulSoup,像jquery選擇器一樣,用起來爽得不要不要的。
推薦閱讀:
※如何處理python爬蟲ip被封?
※怎麼用python爬qq空間的說說列表並保存到本地?
※假如你有海量的QQ或者sina微博社交數據,能做哪些有趣的事情?
※Python 爬蟲如何機器登錄新浪微博並抓取內容?
※請問爬蟲如何爬取動態頁面的內容?