最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python利用Xpath選擇器爬取京東網(wǎng)商品信息

 更新時(shí)間:2020年06月01日 14:59:53   作者:Python進(jìn)階學(xué)習(xí)交流  
這篇文章主要介紹了Python利用Xpath選擇器爬取京東網(wǎng)商品信息,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

HTML文件其實(shí)就是由一組尖括號(hào)構(gòu)成的標(biāo)簽組織起來(lái)的,每一對(duì)尖括號(hào)形式一個(gè)標(biāo)簽,標(biāo)簽之間存在上下關(guān)系,形成標(biāo)簽樹;XPath 使用路徑表達(dá)式在 XML 文檔中選取節(jié)點(diǎn)。節(jié)點(diǎn)是通過沿著路徑或者 step 來(lái)選取的。

首先進(jìn)入京東網(wǎng),輸入自己想要查詢的商品,向服務(wù)器發(fā)送網(wǎng)頁(yè)請(qǐng)求。在這里小編仍以關(guān)鍵詞“狗糧”作為搜索對(duì)象,之后得到后面這一串網(wǎng)址:

https://search.jd.com/Search?keyword=%E7%8B%97%E7%B2%AE&enc=utf-8,其中參數(shù)的意思就是我們輸入的keyword,在本例中該參數(shù)代表“狗糧”,具體詳情可以參考Python大神用正則表達(dá)式教你搞定京東商品信息。所以,只要輸入keyword這個(gè)參數(shù)之后,將其進(jìn)行編碼,就可以獲取到目標(biāo)URL。之后請(qǐng)求網(wǎng)頁(yè),得到響應(yīng),爾后利用bs4選擇器進(jìn)行下一步的數(shù)據(jù)采集。

商品信息在京東官網(wǎng)上的部分網(wǎng)頁(yè)源碼如下圖所示:

狗糧信息在京東官網(wǎng)上的網(wǎng)頁(yè)源碼

仔細(xì)觀察源碼,可以發(fā)現(xiàn)我們所需的目標(biāo)信息是存在<li data-sku="*****" class="gl-item">標(biāo)簽下的,那么接下來(lái)我們就像剝洋蔥一樣,一層一層的去獲取我們想要的信息。

通常URL編碼的方式是把需要編碼的字符轉(zhuǎn)化為%xx的形式,一般來(lái)說URL的編碼是基于UTF-8的,當(dāng)然也有的于瀏覽器平臺(tái)有關(guān)。在Python的urllib庫(kù)中提供了quote方法,可以實(shí)現(xiàn)對(duì)URL的字符串進(jìn)行編碼,從而可以進(jìn)入到對(duì)應(yīng)的網(wǎng)頁(yè)中去。

在線復(fù)制Xpath表達(dá)式

很多小伙伴都覺得Xpath表達(dá)式很難寫,其實(shí)掌握了基本的用法也就不難了。在線復(fù)制Xpath表達(dá)式如上圖所示,可以很方便的復(fù)制Xpath表達(dá)式。但是通過該方法得到的Xpath表達(dá)式放在程序中一般不能用,而且長(zhǎng)的沒法看。所以Xpath表達(dá)式一般還是要自己親自上手。

直接上代碼,利用Xpath去提取目標(biāo)信息,如商品的名字、鏈接、圖片和價(jià)格,具體的代碼如下圖所示:

爬蟲代碼

在這里,小編告訴大家一個(gè)Xpath表達(dá)式匹配技巧。之前看過好幾篇文章,大佬們都推薦Xpath表達(dá)式使用嵌套匹配的方式。在本例中,首先定義items,如下所示:

items = selector.xpath('//li[@class="gl-item"]')

之后通過range函數(shù),逐個(gè)從網(wǎng)頁(yè)中進(jìn)行匹配目標(biāo)信息,而不是直接通過復(fù)制Xpath表達(dá)式的方式一步到位。希望小伙伴們以后都可以少入這個(gè)坑~~

最后得到的效果圖如下所示:

最終效果圖

新鮮的狗糧再一次出爐咯~~~

小伙伴們,有沒有發(fā)現(xiàn)利用Xpath來(lái)獲取目標(biāo)信息比正則表達(dá)式要簡(jiǎn)單一些呢?

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺析對(duì)torch.unsqueeze()函數(shù)理解

    淺析對(duì)torch.unsqueeze()函數(shù)理解

    torch.unsqueeze()函數(shù)起到升維的作用,dim等于幾表示在第幾維度加一,這篇文章主要介紹了對(duì)torch.unsqueeze()函數(shù)理解深度解析,感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • 4種Python基于字段的不使用元類的ORM實(shí)現(xiàn)方法總結(jié)

    4種Python基于字段的不使用元類的ORM實(shí)現(xiàn)方法總結(jié)

    在 Python 中,ORM(Object-Relational Mapping)是一種將對(duì)象和數(shù)據(jù)庫(kù)之間的映射關(guān)系進(jìn)行轉(zhuǎn)換的技術(shù),本文為大家整理了4種不使用元類的簡(jiǎn)單ORM實(shí)現(xiàn)方式,需要的可以參考下
    2023-12-12
  • Python自動(dòng)打印被調(diào)用函數(shù)變量名及對(duì)應(yīng)值?

    Python自動(dòng)打印被調(diào)用函數(shù)變量名及對(duì)應(yīng)值?

    這篇文章主要介紹了Python自動(dòng)打印被調(diào)用函數(shù)的變量名及對(duì)應(yīng)的值,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià),需要的朋友可以參考一下?
    2022-07-07
  • 如何更改Pycharm配置文件的存放路徑

    如何更改Pycharm配置文件的存放路徑

    Pycharm配置文件默認(rèn)是放在C盤的,修改存放位置,這樣系統(tǒng)重裝的時(shí)候就不會(huì)不見了,下面這篇文章主要給大家介紹了關(guān)于如何更改Pycharm配置文件的存放路徑的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • Python?xmltodict實(shí)現(xiàn)簡(jiǎn)化XML數(shù)據(jù)處理

    Python?xmltodict實(shí)現(xiàn)簡(jiǎn)化XML數(shù)據(jù)處理

    Python社區(qū)為提供了xmltodict庫(kù),它專為簡(jiǎn)化XML與Python數(shù)據(jù)結(jié)構(gòu)的轉(zhuǎn)換而設(shè)計(jì),本文主要來(lái)為大家介紹一下如何使用xmltodict實(shí)現(xiàn)簡(jiǎn)化XML數(shù)據(jù)處理,希望對(duì)大家有所幫助
    2025-01-01
  • Python turtle繪畫象棋棋盤

    Python turtle繪畫象棋棋盤

    這篇文章主要為大家詳細(xì)介紹了Python turtle繪畫象棋棋盤,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • Python之Scrapy爬蟲框架安裝及使用詳解

    Python之Scrapy爬蟲框架安裝及使用詳解

    這篇文章主要為大家詳細(xì)介紹了Python Scrapy爬蟲框架安裝及簡(jiǎn)單使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • Python?Pandas數(shù)據(jù)處理高頻操作詳解

    Python?Pandas數(shù)據(jù)處理高頻操作詳解

    這篇文章主要為大家整理了一些Python?Pandas數(shù)據(jù)處理高頻操作,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定的幫助,需要的可以參考一下
    2022-06-06
  • python3?最常用的三種裝飾器語(yǔ)法匯總

    python3?最常用的三種裝飾器語(yǔ)法匯總

    這篇文章主要介紹了python3?最常用的三種裝飾器語(yǔ)法總結(jié),本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • 使用Python實(shí)現(xiàn)文字轉(zhuǎn)語(yǔ)音并生成wav文件的例子

    使用Python實(shí)現(xiàn)文字轉(zhuǎn)語(yǔ)音并生成wav文件的例子

    今天小編就為大家分享一篇使用Python實(shí)現(xiàn)文字轉(zhuǎn)語(yǔ)音并生成wav文件的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2019-08-08

最新評(píng)論

井研县| 宝兴县| 睢宁县| 宜宾县| 班戈县| 尖扎县| 满洲里市| 辽阳县| 延寿县| 东丰县| 乌审旗| 策勒县| 土默特右旗| 政和县| 句容市| 武胜县| 曲麻莱县| 甘泉县| 永善县| 罗山县| 屯留县| 瑞安市| 雅安市| 师宗县| 枣强县| 建平县| 讷河市| 屯门区| 梁平县| 樟树市| 息烽县| 库尔勒市| 卢氏县| 海城市| 巴楚县| 米易县| 莒南县| 枣庄市| 闸北区| 宾川县| 兰州市|