用xpath來解析一般標籤都很簡單,因為大多數到可以找到class或者是id等屬性,確定一類情況。但是下有多個,下有多個,而且還沒有屬性,類似這種:
解決辦法:
第一種:用etree.html()
res = etree.html(response.txt)
table_list = res.xpath('//table[@class="xx"]')#這裡的寫法和response.xpath一般寫法大同小異
#得到table_list這個列表,迴圈裡再進行操作
fortable
intable_list:
item["link"]= table.xpath('.//td[@class="xx"]//a[1]//@href')
第二種:
res = etree.html(response.txt)
之後xpath可以自己不用寫,在要爬取的網頁中,摁f12,會出現下邊這個:
選擇
看到右側出現對應的源**,之後滑鼠右鍵copy->copy xpath,就可以得到/html/body/div[6]/div[1]/ul/li[2]/strong/a,再稍微修改下就可以了。
python xpath解析基本用法
常用便捷高效 原理 1.例項化乙個etree的物件,且需要將被解析的頁面原始碼資料載入到該物件中。2呼叫etree物件中的xpath方法結合著xpath表示式實現標籤的定位和內容的捕獲 環境安裝 pip install lxml 如何例項化乙個etree物件 1.將本地的html文件的原始碼資料載入...
python xpath頁面解析及詞云分析
xpath 全稱xml path language,一種小型的查詢語言 和正則,beautifulsoup的區別在於 正規表示式是進行內容匹配,將符合要求的內容全部獲取 xpath 能將字串轉化為標籤,它會檢測字串內容是否為標籤,但是不能檢測出內容是否為真的標籤 beautifulsoup是pyth...
BeautifulSoup解析非標準HTML的問題
beautifulsoup版本 4.3.2 在用beautifulsoup.find all 搜尋html時,遇到下面的 a href shipin donghuapian 2012 07 25 23404.html title 謙謙君子 target blank 溫潤如玉 a 可以看出 中a標籤的...