豆瓣熱門電影爬取

2021-10-25 16:57:23 字數 1853 閱讀 2504

import requests

import json

import csv

defgetonepagedata

(page)

: start_url =

""headers =

params =

response = requests.get(start_url, headers=headers, params=params)

if response.status_code ==

200:

content_json = response.text

content_list = json.loads(content_json)

# print(content_dic)

return content_list

defwritetocsv

(data_all)

:with

open

("d:\practice\douba.csv"

, mode=

"a", encoding=

"utf-8")as

file

: film_list = csv.writer(

file

)for i in

range(80

):data =data_all[i]

title = data[

"title"

] rate =data[

"score"

] types = data[

"types"

] film_list.writerow(

[title, rate, types]

)if __name__ ==

'__main__'

: page =

"" data_all =

for page in

range(20

,81,20

):data_all = data_all + getonepagedata(page)

# with open("d:\practice\douba.csv", mode="a", encoding="utf-8") as file:

# film_list = csv.writer(file)

writetocsv(data_all)

1.這個和之前的獲取的json資料是不一樣的,之前遇到的json格式資料是乙個物件,以 開始和結束,所以在獲取資料時,

content0 = content_dict[

"mods"

]

直接採用字典的方法就可以。

但這次的json資料是乙個陣列,以[ ]開始和結束

for i in

range(80

):data =data_all[i]

title = data[

"title"

]

所以需要先獲取到列表裡的每一項,在採用字典的方法。

2.在翻頁處理時,這是模板。

for page in

range(20

,81,20

):data_all = data_all + getonepagedata(page)

3.valueerror: i/o operation on closed file.

這個報錯,是因為file變數只在該**塊內有效,使用完畢後會自動關閉i/o流,檔案操作處理語句還是要多注意的。

爬取豆瓣網電影資訊

coding utf 8 import urllib2 import bs4 from bs4 import beautifulsoup 爬取豆瓣網電影簡介,包括電影名,導演,評分以及介紹等 class dbtop def init self self.usr agent mozilla 5.0 w...

電影芳華豆瓣評論爬取

沒有被善待的人,最容易識別善良,也最珍惜善良。適合帶長輩們看,或許多少年後,就沒人再拍這樣的電影了 後面半小時淚彈太足,我們在最好的年代虛度光陰,他們在最壞的年代洗盡鉛華。這條短評跟影片無關 舉報import requests from bs4 import beautifulsoup import...

爬蟲 豆瓣電影爬取案例

直接上 僅供參考。目標爬取資料是某地區的 正在上映 部分的資料,如下圖 完整 如下 usr bin python coding utf 8 from lxml import etree import requests 目標 爬取豆瓣深圳地區的 正在上映 部分的資料 注意點 1 如果網頁採用的編碼方式...