Python采集電影評論實戰(zhàn)示例
數(shù)據(jù)采集
我們上一篇介紹了,如何采集王者皮膚,買不起皮膚,當(dāng)個桌面壁紙挺好的。我們今天來學(xué)習(xí)如何采集電影評論,看看這個電影好不好看。
發(fā)送請求
我們首先確定我們的目標(biāo)網(wǎng)址,對我們需要獲取的數(shù)據(jù)。

我們要把每一個評論獲取下來,我們接下來用到開發(fā)者工具。我們看評論是在什么位置。是不是在網(wǎng)頁源代碼中。接下來,我們發(fā)送請求,獲取網(wǎng)頁源代碼。
url = 'https://movie.douban.com/subject/35267208/comments'
params = {
'start': f'{num}',
'limit': '20',
}
headers = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36',
}
res = requests.get(url, headers=headers, params=params)
print(res)
這段代碼中,我們首先定義了一個 URL,然后使用 requests.get() 函數(shù)獲取該 URL 的數(shù)據(jù),并將其存儲在 res 變量中。最后,我們打印出 res 變量的值,即獲取到的數(shù)據(jù)。
在這個例子中,我們使用了 params 參數(shù)來指定獲取數(shù)據(jù)的起始位置和每頁顯示的記錄數(shù)。在這個例子中,我們指定了起始位置為第 num 條記錄,每頁顯示 limit 條記錄。
請注意,這個例子中使用的 user-agent 頭部是為了模擬瀏覽器的行為。在實際應(yīng)用中,我們應(yīng)該使用 User-Agent 頭部來指定我們的請求類型,例如 requests.get() 函數(shù)默認(rèn)使用 'requests/2.18.4' 作為 User-Agent。
解析數(shù)據(jù)
我們還可以獲取其他信息,比如講,地區(qū),時間之類的。

我們先解析數(shù)據(jù)。
selector = parsel.Selector(res.text)
info_lists = selector.css('div.comment-item')
這段代碼中,我們首先使用 parsel 庫中的 Selector 類來解析 res.text 中的內(nèi)容,并將其轉(zhuǎn)換為 CSS 選擇器。然后,我們使用 css 方法來獲取 CSS 選擇器中的所有 div 元素,并將其存儲在 info_lists 變量中。
需要注意的是,parsel 庫中的 Selector 類是一個比較底層的 CSS 解析器,它并不會對 CSS 選擇器進(jìn)行任何優(yōu)化或轉(zhuǎn)換。因此,在使用 Selector 類時,我們需要確保輸入的 CSS 選擇器是有效的,并且不會包含任何無效的 CSS 屬性或值。
獲取內(nèi)容
for info_list in info_lists:
# print(info_list)
name = info_list.css('.comment-info a::text').get()
rating = info_list.css('.rating::attr(title)').get()
times = info_list.css('.comment-time::attr(title)').get()
area = info_list.css('.comment-location::text').get()
vote_count = info_list.css('.vote-count::text').get()
short = info_list.css('.short::text').get()
這段代碼中,我們使用 for 循環(huán)遍歷 info_lists 中的每一個元素,并使用 css 方法獲取該元素的 text 屬性值。然后,我們使用 get() 方法獲取該屬性值的 title 屬性值,并將其存儲在 name 變量中。接著,我們使用 get() 方法獲取該屬性值的 title 屬性值,并將其存儲在 rating 變量中。最后,我們使用 get() 方法獲取該屬性值的 title 屬性值,并將其存儲在 times 變量中。最后,我們使用 get() 方法獲取該屬性值的 title 屬性值,并將其存儲在 area 變量中。最后,我們使用 get() 方法獲取該屬性值的 title 屬性值,并將其存儲在 vote_count 變量中。最后,我們使用 get() 方法獲取該屬性值的 title 屬性值,并將其存儲在 short 變量中。
輸出內(nèi)容
print(name, rating, times, area, vote_count, short)
這段代碼中,我們使用 print() 函數(shù)打印出了名稱、評分、時間、地點、投票數(shù)和簡短描述。
總結(jié)
在這個例子中,我們使用了parsel庫中的 Selector 類和 css 方法來獲取網(wǎng)頁中的 CSS 選擇器,并將其轉(zhuǎn)換為相應(yīng)的屬性值。我們還可以使用其他方法來解析數(shù)據(jù),例如使用 params 參數(shù)來指定獲取數(shù)據(jù)的起始位置和每頁顯示的記錄數(shù),使用 headers 參數(shù)來指定 User-Agent 頭部。我們還可以使用其他開發(fā)者工具來獲取更多數(shù)據(jù),例如使用網(wǎng)頁源代碼來獲取網(wǎng)頁中的所有評論。
以上就是Python采集電影評論的詳細(xì)內(nèi)容,更多關(guān)于Python采集電影評論的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
ubuntu?20.04系統(tǒng)下如何切換gcc/g++/python的版本
這篇文章主要給大家介紹了關(guān)于ubuntu?20.04系統(tǒng)下如何切換gcc/g++/python版本的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用ubuntu具有一定的參考借鑒價值,需要的朋友可以參考下2023-12-12
python+unittest+requests實現(xiàn)接口自動化的方法
這篇文章主要介紹了python+unittest+requests實現(xiàn)接口自動化的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11
python使用Pandas導(dǎo)出數(shù)據(jù)并保存為CSV文件
Pandas是Python中用于數(shù)據(jù)分析和處理的強(qiáng)大庫,它提供了靈活高效的數(shù)據(jù)結(jié)構(gòu),如DataFrame和Series,使得對數(shù)據(jù)的處理變得簡單易行,在實際應(yīng)用中,我們經(jīng)常需要將處理后的數(shù)據(jù)保存為CSV,所以本文給大家介紹了python使用Pandas導(dǎo)出數(shù)據(jù)并保存為CSV文件2024-12-12
Python繪制loss曲線和準(zhǔn)確率曲線實例代碼
pytorch雖然使用起來很方便,但在一點上并沒有tensorflow方便,就是繪制模型訓(xùn)練時在訓(xùn)練集和驗證集上的loss和accuracy曲線(共四條),下面這篇文章主要給大家介紹了關(guān)于Python繪制loss曲線和準(zhǔn)確率曲線的相關(guān)資料,需要的朋友可以參考下2022-08-08
python pandas利用fillna方法實現(xiàn)部分自動填充功能
這篇文章主要介紹了python pandas通過fillna方法實現(xiàn)部分自動填充功能,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-03
Windows下PyCharm配置Anaconda環(huán)境(超詳細(xì)教程)
這篇文章主要介紹了Windows下PyCharm配置Anaconda環(huán)境,本文給大家分享一篇超詳細(xì)教程,通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-07
python機(jī)器學(xué)習(xí)Sklearn實戰(zhàn)adaboost算法示例詳解
這篇文章主要為大家介紹了python機(jī)器學(xué)習(xí)Sklearn實戰(zhàn)adaboost算法的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2021-11-11
Python基礎(chǔ)之循環(huán)語句相關(guān)知識總結(jié)
今天給大家?guī)淼氖顷P(guān)于Python基礎(chǔ)的相關(guān)知識,文章圍繞著Python循環(huán)語句展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下2021-06-06

