国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

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

瀏覽:4日期:2022-07-23 16:07:53

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

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

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

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

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

話不多說(shuō),直接擼代碼,如下圖所示。小編用的是py3,也建議大家以后多用py3版本。通常URL編碼的方式是把需要編碼的字符轉(zhuǎn)化為%xx的形式,一般來(lái)說(shuō)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è)中去。

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

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

利用正則表達(dá)式實(shí)現(xiàn)對(duì)目標(biāo)信息的精準(zhǔn)采集

正則表達(dá)式寫在這個(gè)程序中確實(shí)蠻復(fù)雜的,也占據(jù)了多行,但是主要用到的正則表達(dá)式是[wW]+?和[sS]+?。

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

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

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

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

輸出效果圖

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

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

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

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

標(biāo)簽: 京東 Python
相關(guān)文章:
主站蜘蛛池模板: 亚洲影院中文字幕 | 自拍 欧美 在线 综合 另类 | 91天仙tv嫩模福利 | 欧美午夜三级我不卡在线观看 | a级国产乱理伦片在线 | 三级视频在线播放 | 美女毛片在线看 | 国产精品国产自线在线观看 | 国产盗摄一区二区三区 | 欧美一级三级在线观看 | 欧美视频一区二区在线观看 | 亚洲性无码av在线 | 99免费精品视频 | 亚洲91 | 一区二区三区观看 | 日本成a人片在线观看网址 日本成年人视频网站 | 久久在线综合 | 日韩成人在线播放 | 久久精品一区 | 久久99亚洲精品久久频 | 久草在线视频在线观看 | a黄色毛片| 国产精品爱久久久久久久9999 | 亚洲综合一区二区精品久久 | 精品在线观看一区 | 欧美特黄一区二区三区 | 国产欧美精品一区二区三区四区 | 国产视频97| 在线毛片网站 | 国产午夜精品不卡观看 | 国产女人毛片 | 欧美级毛片 | 久久99国产亚洲精品观看 | 91精品宅男在线观看 | 大视频在线爱爱爱爱 | 国产欧美在线观看不卡 | 亚洲精品一区二区中文 | 国产在线视频自拍 | 久久国产免费观看精品3 | 高清国产精品久久 | 成人毛片免费播放 |