溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python 爬蟲開發(fā)之xpath使用

發(fā)布時(shí)間:2020-07-20 09:29:57 來源:網(wǎng)絡(luò) 閱讀:665 作者:weady 欄目:編程語(yǔ)言

在進(jìn)行爬蟲開發(fā)中,需要的頁(yè)面信息進(jìn)行解析處理,獲取到需要的關(guān)鍵數(shù)據(jù)??梢岳脁path進(jìn)行對(duì)頁(yè)面的xml文件進(jìn)行解析處理,獲取到需要的關(guān)鍵數(shù)據(jù)。
XPath使用:
XPath 可用來在 XML 文檔中對(duì)元素和屬性進(jìn)行遍歷.
from lxml import etree
import urllib2
req = urllib2.Request(url)
req.add_header('User-Agent', 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)')
web_info = urllib2.urlopen(req).read()
html = etree.HTML(web_info)
result = etree.tostring(html) #tostring 是補(bǔ)全缺失的html標(biāo)簽
html_data = result.xpath('/html/body/div/ul/li/a/text()') 獲取某個(gè)標(biāo)簽的數(shù)據(jù),返回的是對(duì)象,可以通過遍歷得到具體的數(shù)據(jù)
html_data = html.xpath('/html/body/div/ul/li/a/@href') 獲取某個(gè)標(biāo)簽的屬性 獲取屬性值用@
html_data = html.xpath('/html/body/div/ul/li/a[@href="link2.html"]/text()') 獲取a表現(xiàn)屬性為link2.html的內(nèi)容
html_data = html.xpath('//li/a/text()') 使用相對(duì)路徑獲取a標(biāo)簽的內(nèi)容
html_data = html.xpath('//li/a//@href') 使用相對(duì)路徑獲取a標(biāo)簽的屬性值

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI