您好,登錄后才能下訂單哦!
本篇內容介紹了“怎么用CSS選擇器抓取京東網的商品信息”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
CSS選擇器
目前,除了官方文檔之外,市面上及網絡詳細介紹BeautifulSoup使用的技術書籍和博客軟文并不多,而在這僅有的資料中介紹CSS選擇器的少之又少。在網絡爬蟲的頁面解析中,CCS選擇器實際上是一把效率甚高的利器。雖然資料不多,但官方文檔卻十分詳細,然而美中不足的是需要一定的基礎才能看懂,而且沒有小而精的演示實例。
京東商品圖
首先進入京東網,輸入自己想要查詢的商品,向服務器發送網頁請求。在這里小編仍以關鍵詞“狗糧”作為搜索對象,之后得到后面這一串網址:https://search.jd.com/Search?keyword=%E7%8B%97%E7%B2%AE&enc=utf-8,其中參數的意思就是我們輸入的keyword,在本例中該參數代表“狗糧”,具體詳情可以參考Python大神用正則表達式教你搞定京東商品信息。所以,只要輸入keyword這個參數之后,將其進行編碼,就可以獲取到目標URL。之后請求網頁,得到響應,爾后利用CSS選擇器進行下一步的數據采集。
商品信息在京東官網上的部分網頁源碼如下圖所示:
部分網頁源碼
仔細觀察源碼,可以發現我們所需的目標信息在紅色框框的下面,那么接下來我們就要一層一層的去獲取想要的信息。
在Python的urllib庫中提供了quote方法,可以實現對URL的字符串進行編碼,從而可以進入到對應的網頁中去。
CSS選擇器在線復制
很多小伙伴都覺得CSS表達式很難寫,其實掌握了基本的用法也就不難了。在線復制CSS表達式如上圖所示,可以很方便的復制CSS表達式。但是通過該方法得到的CSS表達式放在程序中一般不能用,而且長的沒法看。所以CSS表達式一般還是要自己親自上手。
直接上代碼,利用CSS去提取目標信息,如商品的名字、鏈接、圖片和價格,具體的代碼如下圖所示:
代碼實現
如果你想快速的實現功能更強大的網絡爬蟲,那么BeautifulSoupCSS選擇器將是你必備的利器之一。BeautifulSoup整合了CSS選擇器的語法和自身方便使用API。在網絡爬蟲的開發過程中,對于熟悉CSS選擇器語法的人,使用CSS選擇器是個非常方便的方法。
最后得到的效果圖如下所示:
最終效果圖
新鮮的狗糧再一次出爐咯~~~
關于CSS選擇器的簡單介紹:
BeautifulSoup支持大部分的CSS選擇器。其語法為:向tag對象或BeautifulSoup對象的.select()方法中傳入字符串參數,選擇的結果以列表形式返回,即返回類型為list。
tag.select("string")
BeautifulSoup.select("string")
注意:在取得含有特定CSS屬性的元素時,標簽名不加任何修飾,如class類名前加點,id名前加 #。
“怎么用CSS選擇器抓取京東網的商品信息”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。