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

Python如何使用正則表達式爬取京東商品信息

 更新時間:2020年06月01日 11:31:18   作者:Python進階學習交流  
這篇文章主要介紹了Python如何使用正則表達式爬取京東商品信息,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

京東(JD.com)是中國最大的自營式電商企業(yè),2015年第一季度在中國自營式B2C電商市場的占有率為56.3%。如此龐大的一個電商網(wǎng)站,上面的商品信息是海量的,小編今天就帶小伙伴利用正則表達式,并且基于輸入的關(guān)鍵詞來實現(xiàn)主題爬蟲。

首先進去京東網(wǎng),輸入自己想要查詢的商品,小編在這里以關(guān)鍵詞“狗糧”作為搜索對象,之后得到后面這一串網(wǎng)址:
https://search.jd.com/Search?keyword=%E7%8B%97%E7%B2%AE&enc=utf-8,其實參數(shù)%E7%8B%97%E7%B2%AE解碼之后就是“狗糧”的意思。那么非常明顯,只要輸入keyword這個參數(shù)之后,將其進行編碼,就可以獲取到我們的目標網(wǎng)址了,請求網(wǎng)頁,得到響應(yīng),爾后利用選擇器便可以進行下一步的精準采集了。

在京東網(wǎng)上,狗糧信息在京東官網(wǎng)上的網(wǎng)頁源碼如下圖所示:

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

話不多說,直接擼代碼,如下圖所示。小編用的是py3,也建議大家以后多用py3版本。通常URL編碼的方式是把需要編碼的字符轉(zhuǎn)化為%xx的形式,一般來說URL的編碼是基于UTF-8的,當然也有的于瀏覽器平臺有關(guān)。在Python的urllib庫中提供了quote方法,可以實現(xiàn)對URL的字符串進行編碼,從而可以進入到對應(yīng)的網(wǎng)頁中去。

正則表達式,又稱正規(guī)表示式、正規(guī)表示法、正規(guī)表達式、規(guī)則表達式、常規(guī)表示法(英語:Regular Expression,在代碼中常簡寫為regex、regexp或RE),是一種可以用于模式匹配和替換的強有力的工具。找到目標網(wǎng)頁之后,調(diào)用urllib中的urlopen函數(shù)打開網(wǎng)頁并獲取源碼,之后利用正則表達式實現(xiàn)對目標信息的精準采集。

利用正則表達式實現(xiàn)對目標信息的精準采集

正則表達式寫在這個程序中確實蠻復(fù)雜的,也占據(jù)了多行,但是主要用到的正則表達式是[\w\W]+?和[\s\S]+?。

[\s\S]或者[\w\W]是完全通配的意思,\s是指空白,包括空格、換行、tab縮進等所有的空白,而\S剛好相反。這樣一正一反下來,就表示所有的字符,完全的,一字不漏的。另外,[]這個符號,表示在它里面包含的單個字符不限順序的出現(xiàn),比如下面的正則:[ace]*,這表示,只要出現(xiàn)a/c/e這三個任意的字母,都會被匹配。

此外,[\s]表示,只要出現(xiàn)空白就匹配;[\S]表示,非空白就匹配。那么它們的組合,表示所有的都匹配,與它相對應(yīng)的,有[\w\W]等,意義完全相同。其實,[\s\S] 和 [\w\W]這樣的用法,比"."所匹配的還要多,因為"."是不會匹配換行的,所有出現(xiàn)有換行匹配的時候,人們就習慣 使用[\s\S]或者[\w\W]這樣的完全通配模式。

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

輸出效果圖

這樣小伙伴們就可以獲取到狗糧的商品信息了,當然,小編在這里只是拋磚引玉,只匹配了四個信息,而且只是做了個單頁的獲取。需要更多數(shù)據(jù)的小伙伴們可以自行去更改正則表達式和設(shè)置多頁,達到你想要的效果。下篇文章小編將利用美麗的湯BeautifulSoup來進行匹配目標數(shù)據(jù),實現(xiàn)目標信息的精準獲取。

最后給大家簡單介紹一下正則表達式。正則表達式使用單個字符串來描述、匹配一系列匹配某個句法規(guī)則的字符串。在很多文本編輯器里,正則表達式通常被用來檢索、替換那些匹配某個模式的文本。

正則表達式對于初學者確實晦澀難懂,不過慢慢學習還是可以掌握的,并不一定要完全記下來,但是你要知道什么時候需要什么參數(shù),能做到順利使用它就可以了。

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

相關(guān)文章

  • Python光學仿真之對光的干涉理解學習

    Python光學仿真之對光的干涉理解學習

    這篇文章主要為大家介紹了Python光學仿真之對光的干涉理解學習,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2021-10-10
  • Python獲取服務(wù)器信息的最簡單實現(xiàn)方法

    Python獲取服務(wù)器信息的最簡單實現(xiàn)方法

    這篇文章主要介紹了Python獲取服務(wù)器信息的最簡單實現(xiàn)方法,涉及Python中urllib2庫的使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-03-03
  • Python設(shè)置和解除Word文檔保護的實現(xiàn)步驟

    Python設(shè)置和解除Word文檔保護的實現(xiàn)步驟

    在日常工作和學習中,我們經(jīng)常需要使用Word文檔來記錄和分享重要的信息,為了確保文檔內(nèi)容的安全性和完整性,了解如何保護和取消保護Word文檔顯得尤為重要,這篇博客將詳細介紹如何使用Python設(shè)置和解除Word文檔的保護,需要的朋友可以參考下
    2025-02-02
  • python實現(xiàn)小世界網(wǎng)絡(luò)生成

    python實現(xiàn)小世界網(wǎng)絡(luò)生成

    今天小編就為大家分享一篇python實現(xiàn)小世界網(wǎng)絡(luò)生成,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python利用keyboard模塊實現(xiàn)鍵盤記錄操作

    Python利用keyboard模塊實現(xiàn)鍵盤記錄操作

    模擬鍵盤操作執(zhí)行自動化任務(wù),我們常用的有pyautowin等自動化操作模塊。今天介紹的這個模塊叫做keyboard,它是純Python原生開發(fā),編譯時完全不需要依賴C語言模塊。一行命令就能完成安裝,非常方便,需要的可以了解一下
    2022-10-10
  • python 下劃線的多種應(yīng)用場景總結(jié)

    python 下劃線的多種應(yīng)用場景總結(jié)

    Python有很多地方使用下劃線,在不同場合下,有不同含義。本文總結(jié)Python語言編程中常用下劃線的地方,力圖一次搞懂下劃線的常見用法,感興趣的朋友快來一起看看吧
    2021-05-05
  • Keras搭建自編碼器操作

    Keras搭建自編碼器操作

    這篇文章主要介紹了Keras搭建自編碼器操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • python基于FTP實現(xiàn)文件傳輸相關(guān)功能代碼實例

    python基于FTP實現(xiàn)文件傳輸相關(guān)功能代碼實例

    這篇文章主要介紹了python基于FTP實現(xiàn)文件傳輸相關(guān)功能代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-09-09
  • Django搭建MySQL主從實現(xiàn)讀寫分離

    Django搭建MySQL主從實現(xiàn)讀寫分離

    本文主要介紹了Django搭建MySQL主從實現(xiàn)讀寫分離,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Python爬蟲:url中帶字典列表參數(shù)的編碼轉(zhuǎn)換方法

    Python爬蟲:url中帶字典列表參數(shù)的編碼轉(zhuǎn)換方法

    今天小編就為大家分享一篇Python爬蟲:url中帶字典列表參數(shù)的編碼轉(zhuǎn)換方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08

最新評論

青州市| 文山县| 信阳市| 汉源县| 郸城县| 玛曲县| 微博| 阜南县| 泰和县| 昆山市| 长治县| 舟曲县| 文登市| 年辖:市辖区| 虹口区| 鹤岗市| 蒙自县| 肇州县| 元谋县| 黄山市| 山阳县| 襄城县| 湖口县| 安新县| 苏州市| 抚顺市| 台江县| 兰西县| 沙湾县| 扶沟县| 磐石市| 玛多县| 即墨市| 陆良县| 徐汇区| 自贡市| 长春市| 宝应县| 绿春县| 延庆县| 环江|