python使用xpath中遇到:<Element a at 0x39a9a80>到底是什么?
前言
大家在學(xué)習(xí)python爬蟲(chóng)的過(guò)程中,會(huì)發(fā)現(xiàn)一個(gè)問(wèn)題,語(yǔ)法我看完了,說(shuō)的也很詳細(xì),我也認(rèn)真看了,爬蟲(chóng)還是不會(huì)寫(xiě),或者沒(méi)有思路,所以我的所有文章都會(huì)從實(shí)例的角度來(lái)解析一些常見(jiàn)的問(wèn)題和報(bào)錯(cuò)。下面話不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹吧。
Element是什么
回歸正題,大家暈頭轉(zhuǎn)腦的看完繁雜的語(yǔ)法之后,已經(jīng)迫不及待寫(xiě)點(diǎn)什么東西了,然后部分同學(xué)可能遇到了這個(gè)
<Element a at 0x39a9a80>
或者類似 Element a at 0x???????,這樣的一個(gè)值,然后大家?guī)е鴨?wèn)題去搜,然后全是英文啊,什么一大堆亂七八糟的啊,英文不好的同學(xué)就崩潰了,在這里,我會(huì)重點(diǎn)解析一下
某種意義上來(lái)說(shuō),當(dāng)你打印變量的時(shí)候得到的這個(gè)值,其實(shí)它是一個(gè)列表,然后列表中的每一個(gè)值都是一個(gè)字典
如何使用理解請(qǐng)看半成品開(kāi)車(chē)實(shí)例,證明了本人非常擅長(zhǎng)把學(xué)習(xí)和樂(lè)趣結(jié)合起來(lái)并且切身解決日常需求,滑稽臉.jpg
from bs4 import BeautifulSoup
from lxml import etree
import requests
gjc='SHKD-700'
#定義URL
html = "http://www.btanv.com/search/"+gjc+"-hot-desc-1"
#解碼URL
html = requests.get(html).content.decode('utf-8')
#解析成xml
dom_tree = etree.HTML(html)
#在xml中定位節(jié)點(diǎn),返回的是一個(gè)列表
links = dom_tree.xpath("http://a[@class='download']")
for index in range(len(links)):
# links[index]返回的是一個(gè)字典
if (index % 2) == 0:
print(links[index].tag)
print(links[index].attrib)
print(links[index].text)
實(shí)例解析
下面重點(diǎn)看看這個(gè)代碼,
print(links[index]) print(type(links[index])) print(links[index].tag)#獲取<a>標(biāo)簽名a print(links[index].attrib)#獲取<a>標(biāo)簽的屬性href和class print(links[index].text)#獲取<a>標(biāo)簽的文字部分
打印出來(lái)的是
<Element a at 0x3866a58>
<class 'lxml.etree._Element'>
a
{'href': 'magnet:?xt=urn:btih:7502edea0dfe9c2774f95118db3208a108fe10ca', 'class': 'download'}
磁力鏈接
該節(jié)點(diǎn)的html代碼為
<a href="magnet:xt=urn:btih:7502edea0dfe9c2774f95118db3208a108fe10ca" rel="external nofollow" class="download">磁力鏈接</a>
看到這里大家應(yīng)該就非常獸血沸騰的了解了三個(gè)屬性的用法了。
總結(jié)
- Element類型是'lxml.etree._Element',某種意義來(lái)說(shuō)同時(shí)是一個(gè)列表
- 列表的需要使用tag\attrib\text三個(gè)不同的屬性來(lái)獲取我們需要的東西
- 變量.tag獲取到的是標(biāo)簽名是---字符串
- 變量.attrib獲取到的是節(jié)點(diǎn)標(biāo)簽a的屬性---字典
- 變量.text獲取到的是標(biāo)簽文本--字符串
歡迎收藏點(diǎn)贊,拒絕轉(zhuǎn)載,因?yàn)槟壳拔乙彩亲詫W(xué)向前摸索,這些都是我目前認(rèn)知到的東西,肯定有講的不準(zhǔn)確的地方,不希望會(huì)誤導(dǎo)到他人
好了,以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
打包遷移Python?env環(huán)境的三種方法總結(jié)
平常工作中可能遇到python虛擬環(huán)境遷移的場(chǎng)景,總結(jié)了如下幾個(gè)方法,下面這篇文章主要給大家介紹了關(guān)于打包遷移Python?env環(huán)境的三種方法,需要的朋友可以參考下2024-08-08
Python文本統(tǒng)計(jì)功能之西游記用字統(tǒng)計(jì)操作示例
這篇文章主要介紹了Python文本統(tǒng)計(jì)功能之西游記用字統(tǒng)計(jì)操作,結(jié)合實(shí)例形式分析了Python文本讀取、遍歷、統(tǒng)計(jì)等相關(guān)操作技巧,需要的朋友可以參考下2018-05-05
Python?tkinter?多選按鈕控件?Checkbutton方法
這篇文章主要介紹了Python?tkinter?多選按鈕控件?Checkbutton方法,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-07-07
python cv2讀取rtsp實(shí)時(shí)碼流按時(shí)生成連續(xù)視頻文件方式
今天小編就為大家分享一篇python cv2讀取rtsp實(shí)時(shí)碼流按時(shí)生成連續(xù)視頻文件方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12
python 字典 按key值大小 倒序取值的實(shí)例
今天小編就為大家分享一篇python 字典 按key值大小 倒序取值的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-07-07
使用pyhon繪圖比較兩個(gè)手機(jī)屏幕大小(實(shí)例代碼)
這篇文章主要介紹了使用pyhon繪圖比較兩個(gè)手機(jī)屏幕大小,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01

