91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python怎么利用Xpath抓取京東網商品信息

發布時間:2021-08-05 20:20:57 來源:億速云 閱讀:227 作者:chen 欄目:大數據

本篇內容介紹了“python怎么利用Xpath抓取京東網商品信息”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

HTML文件其實就是由一組尖括號構成的標簽組織起來的,每一對尖括號形成一個標簽,標簽之間存在上下關系,形成標簽樹;XPath 使用路徑表達式在 XML 文檔中選取節點。節點是通過沿著路徑或者 step 來選取的。

python怎么利用Xpath抓取京東網商品信息

京東網狗糧商品

首先進入京東網,輸入自己想要查詢的商品,向服務器發送網頁請求。在這里小編仍以關鍵詞“狗糧”作為搜索對象,之后得到后面這一串網址:https://search.jd.com/Search?keyword=%E7%8B%97%E7%B2%AE&enc=utf-8,其中參數的意思就是我們輸入的keyword,在本例中該參數代表“狗糧”,具體詳情可以參考Python大神用正則表達式教你搞定京東商品信息。所以,只要輸入keyword這個參數之后,將其進行編碼,就可以獲取到目標URL。之后請求網頁,得到響應,爾后利用bs4選擇器進行下一步的數據采集。

商品信息在京東官網上的部分網頁源碼如下圖所示:

python怎么利用Xpath抓取京東網商品信息

狗糧信息在京東官網上的網頁源碼

仔細觀察源碼,可以發現我們所需的目標信息是存在<li data-sku="*****" class="gl-item">標簽下的,那么接下來我們就像剝洋蔥一樣,一層一層的去獲取我們想要的信息。

通常URL編碼的方式是把需要編碼的字符轉化為%xx的形式,一般來說URL的編碼是基于UTF-8的,當然也有的于瀏覽器平臺有關。在Python的urllib庫中提供了quote方法,可以實現對URL的字符串進行編碼,從而可以進入到對應的網頁中去。

python怎么利用Xpath抓取京東網商品信息

在線復制Xpath表達式

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

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

python怎么利用Xpath抓取京東網商品信息

爬蟲代碼

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

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

之后通過range函數,逐個從網頁中進行匹配目標信息,而不是直接通過復制Xpath表達式的方式一步到位,如下所示:

title = selector.xpath('//div[@class="p-img"]/a')[i].get('title')

希望小伙伴們以后都可以少入這個坑~~

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

python怎么利用Xpath抓取京東網商品信息

最終效果圖

“python怎么利用Xpath抓取京東網商品信息”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

米泉市| 宁都县| 绥棱县| 东源县| 中卫市| 鄄城县| 曲阳县| 田林县| 天祝| 池州市| 花莲市| 齐河县| 乡城县| 潜山县| 永川市| 石阡县| 咸阳市| 棋牌| 宁强县| 泾川县| 文安县| 嘉善县| 铁岭市| 阜阳市| 涿州市| 乐都县| 汨罗市| 桦甸市| 延长县| 余江县| 澎湖县| 封丘县| 福海县| 通许县| 赤水市| 乌拉特中旗| 新干县| 东方市| 巨鹿县| 柘荣县| 北海市|