欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python CSS選擇器爬取京東網(wǎng)商品信息過程解析

 更新時間:2020年06月01日 15:50:22   作者:dcpeng  
這篇文章主要介紹了Python CSS選擇器爬取京東網(wǎng)商品信息過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

CSS選擇器

目前,除了官方文檔之外,市面上及網(wǎng)絡(luò)詳細(xì)介紹BeautifulSoup使用的技術(shù)書籍和博客軟文并不多,而在這僅有的資料中介紹CSS選擇器的少之又少。在網(wǎng)絡(luò)爬蟲的頁面解析中,CCS選擇器實際上是一把效率甚高的利器。雖然資料不多,但官方文檔卻十分詳細(xì),然而美中不足的是需要一定的基礎(chǔ)才能看懂,而且沒有小而精的演示實例。

京東商品圖

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

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

部分網(wǎng)頁源碼

仔細(xì)觀察源碼,可以發(fā)現(xiàn)我們所需的目標(biāo)信息在紅色框框的下面,那么接下來我們就要一層一層的去獲取想要的信息。

在Python的urllib庫中提供了quote方法,可以實現(xiàn)對URL的字符串進(jìn)行編碼,從而可以進(jìn)入到對應(yīng)的網(wǎng)頁中去。

CSS選擇器在線復(fù)制

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

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

代碼實現(xiàn)

如果你想快速的實現(xiàn)功能更強大的網(wǎng)絡(luò)爬蟲,那么BeautifulSoupCSS選擇器將是你必備的利器之一。BeautifulSoup整合了CSS選擇器的語法和自身方便使用API。在網(wǎng)絡(luò)爬蟲的開發(fā)過程中,對于熟悉CSS選擇器語法的人,使用CSS選擇器是個非常方便的方法。

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

最終效果圖

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

CSS選擇器

關(guān)于CSS選擇器的簡單介紹:

BeautifulSoup支持大部分的CSS選擇器。其語法為:向tag對象或BeautifulSoup對象的.select()方法中傳入字符串參數(shù),選擇的結(jié)果以列表形式返回,即返回類型為list。

tag.select("string")

BeautifulSoup.select("string")

注意:在取得含有特定CSS屬性的元素時,標(biāo)簽名不加任何修飾,如class類名前加點,id名前加 /#。

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

相關(guān)文章

  • python-opencv顏色提取分割方法

    python-opencv顏色提取分割方法

    今天小編就為大家分享一篇python-opencv顏色提取分割方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python刪除n行后的其他行方法

    Python刪除n行后的其他行方法

    今天小編就為大家分享一篇Python刪除n行后的其他行方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • 基于Django的ModelForm組件(詳解)

    基于Django的ModelForm組件(詳解)

    下面小編就為大家分享一篇基于Django的ModelForm組件詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • Python 返回漢字的漢語拼音

    Python 返回漢字的漢語拼音

    最近做程序用到漢字轉(zhuǎn)漢語拼音的問題,首先想到Google一下,但是拿來看了一下源碼,不是甚清楚。
    2009-02-02
  • Python接口自動化系列之unittest結(jié)合ddt的使用教程詳解

    Python接口自動化系列之unittest結(jié)合ddt的使用教程詳解

    這篇文章主要介紹了Python接口自動化系列之unittest結(jié)合ddt的使用教程詳解,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • 利用Python中?Rembg庫實現(xiàn)去除圖片背景

    利用Python中?Rembg庫實現(xiàn)去除圖片背景

    這篇文章主要介紹了利用Python中?Rembg庫實現(xiàn)去除圖片背景,文章基于?Rembg庫得運用展開詳細(xì)介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-05-05
  • Python decimal模塊的使用示例詳解

    Python decimal模塊的使用示例詳解

    decimal 模塊decimal意思為十進(jìn)制,這個模塊提供了十進(jìn)制浮點運算支持,本篇文章主要給大家講解Python decimal模塊的使用,需要的朋友可以參考下
    2023-03-03
  • 你知道嗎實現(xiàn)炫酷可視化只要1行python代碼

    你知道嗎實現(xiàn)炫酷可視化只要1行python代碼

    這篇文章主要給大家介紹了關(guān)于利用Python進(jìn)行數(shù)據(jù)可視化常見的9種方法!文中介紹的方法真的超實用!對大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-08-08
  • Python 中的 XML 轉(zhuǎn)換利器xml2dict詳解

    Python 中的 XML 轉(zhuǎn)換利器xml2dict詳解

    xml2dict是一個Python庫,可以將XML數(shù)據(jù)轉(zhuǎn)換為字典,也支持反向轉(zhuǎn)換,它簡化了XML的處理,使之像處理JSON一樣簡單,適用于Web服務(wù)數(shù)據(jù)交換、配置文件讀取等場景,安裝簡單,使用方便,還可以通過自定義轉(zhuǎn)換器處理XML屬性和命名空間
    2024-10-10
  • python設(shè)置隨機種子實例講解

    python設(shè)置隨機種子實例講解

    在本篇文章里小編給大家整理的是關(guān)于python設(shè)置隨機種子的相關(guān)知識點以及實例內(nèi)容,需要的朋友們學(xué)習(xí)下。
    2019-09-09

最新評論