日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > CSS >内容正文

CSS

css 查看更多_在Scrapy中如何利用CSS选择器从网页中采集目标数据——详细教程(上篇)...

發(fā)布時(shí)間:2024/7/23 CSS 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 css 查看更多_在Scrapy中如何利用CSS选择器从网页中采集目标数据——详细教程(上篇)... 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

/前言/

今天小編給大家介紹Scrapy中另外一種選擇器,即大家經(jīng)常聽(tīng)說(shuō)的CSS選擇器。

/CSS基礎(chǔ)/

CSS選擇器和Xpath選擇器的功能是一致的,都是幫助我們?nèi)ザㄎ痪W(wǎng)頁(yè)結(jié)構(gòu)中的某一個(gè)具體的元素,但是在語(yǔ)法表達(dá)上有區(qū)別。Xpath選擇器明明已經(jīng)可以幫助我們提取信息了,為什么還要學(xué)習(xí)CSS選擇器呢?

蘿卜青菜各有所愛(ài),對(duì)于不同知識(shí)背景的小伙伴,都可以來(lái)提取網(wǎng)頁(yè)信息。只要是能抓到老鼠的貓,都是好貓,同樣的,只要能提取信息,不論是正則表達(dá)式、BeateafulSoup、Xpath選擇器亦或是CSS選擇器,都是好的選擇器,只不過(guò)在效率和難易程度上不一樣。此外,對(duì)應(yīng)前端的小伙伴來(lái)說(shuō),CSS選擇器對(duì)他們來(lái)說(shuō)就簡(jiǎn)單很多。

CSS選擇器功能強(qiáng)大,從實(shí)用性出發(fā),下面是部分比較常用的一些CSS選擇器語(yǔ)法,相對(duì)來(lái)說(shuō)比較簡(jiǎn)單,但是也是非常實(shí)用的語(yǔ)法,希望大家都可以牢牢掌握,后期在提取網(wǎng)頁(yè)信息的時(shí)候?qū)?huì)事半功倍。

有了以上的CSS基礎(chǔ)之后,接下來(lái)我們進(jìn)行實(shí)際應(yīng)用。

/實(shí)際應(yīng)用/

仍然以之前的網(wǎng)站為例進(jìn)行說(shuō)明,我們的目標(biāo)數(shù)據(jù)是標(biāo)題、發(fā)布日期、主題、正文內(nèi)容、點(diǎn)贊數(shù)、收藏?cái)?shù)、評(píng)論數(shù)等。

1、關(guān)于標(biāo)題部分,之前我們利用Xpath的表達(dá)式的時(shí)候就分析過(guò),得到了唯一性的定位標(biāo)簽,在此不再贅述,如下圖所示。

2、仍然利用scrapyshell的調(diào)試模式進(jìn)行助攻,結(jié)合上邊的CSS基礎(chǔ)語(yǔ)法,標(biāo)題的具體CSS表達(dá)式如下圖所示。

需要注意的是在CSS中獲取標(biāo)簽文本內(nèi)容的方式是在CSS表達(dá)式后邊緊跟“::text”,記住是有兩個(gè)冒號(hào)噢,與Xpath表達(dá)式不一樣。這個(gè)表達(dá)式看上去比Xpath表達(dá)式要簡(jiǎn)潔一些,所以當(dāng)某些情況下,大家如果覺(jué)得CSS選擇器的表達(dá)式比Xpath表達(dá)式要簡(jiǎn)短或者理解起來(lái)相對(duì)容易的話(huà),可以首選CSS選擇器,沒(méi)有具體的要求,大家根據(jù)自己的喜愛(ài)來(lái)進(jìn)行選擇即可,反之亦成立,當(dāng)然也可以同時(shí)在一個(gè)爬蟲(chóng)文件將兩個(gè)或者多個(gè)選擇器進(jìn)行交叉使用。

3、接下來(lái)是發(fā)布日期的提取,仍然是以交互式的方式實(shí)現(xiàn)網(wǎng)頁(yè)與源碼之間的交互,其中標(biāo)簽“entry-meta-hide-on-mobile”具有全局唯一性,可以很方便的定位到元素,如下圖所示。

4、根據(jù)網(wǎng)頁(yè)結(jié)構(gòu),我們可輕易的寫(xiě)出發(fā)布日期的CSS表達(dá)式,可以在scrapy shell中先進(jìn)行測(cè)試,再將選擇器表達(dá)式寫(xiě)入爬蟲(chóng)文件中,詳情如下圖所示。

5、關(guān)于文章主題標(biāo)簽的CSS表達(dá)式,可以看到其在網(wǎng)頁(yè)結(jié)構(gòu)上處于日期的下方,如下圖所示。

6、通過(guò)更改一下發(fā)布日期的CSS表達(dá)式,即可獲取到文章主題標(biāo)簽。文章主題標(biāo)簽處于a標(biāo)簽下,如下圖所示。

獲取到整個(gè)列表之后,利用join函數(shù)將數(shù)組中的元素以逗號(hào)連接生成一個(gè)新的字符串叫tags,然后寫(xiě)入Scrapy爬蟲(chóng)文件中去。

7、對(duì)于點(diǎn)贊數(shù),其分析方法同之前一致,找到唯一的一個(gè)標(biāo)簽“vote-post-up”即可定位到數(shù)據(jù)。

8、點(diǎn)贊數(shù)在h10標(biāo)簽下,根據(jù)網(wǎng)頁(yè)結(jié)構(gòu)寫(xiě)出CSS表達(dá)式,調(diào)試的過(guò)程如下圖所示。

取出的點(diǎn)贊數(shù)是個(gè)字符串,需要利用int()將其強(qiáng)制轉(zhuǎn)換為數(shù)字。

/小結(jié)/

本文基于CSS理論基礎(chǔ),主要介紹了CSS選擇器的簡(jiǎn)單語(yǔ)法和利用CSS選擇器做相關(guān)數(shù)據(jù)采集,下一篇文章將繼續(xù)分享CSS表達(dá)式數(shù)據(jù)采集方法,敬請(qǐng)期待,希望對(duì)大家的學(xué)習(xí)有幫助。

想學(xué)習(xí)更多關(guān)于Python的知識(shí),可以參考學(xué)習(xí)網(wǎng)址:,點(diǎn)擊閱讀原文,可以直達(dá)噢~

【編輯推薦】

【責(zé)任編輯:

姜華

TEL:(010)68476606】


點(diǎn)贊 0

總結(jié)

以上是生活随笔為你收集整理的css 查看更多_在Scrapy中如何利用CSS选择器从网页中采集目标数据——详细教程(上篇)...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。