今天我們看一下如何爬取豆瓣的電影信息。
首先我們打開豆瓣電影的網頁,這裏我隨便一個分類。
這裏我們看到頁面中只有這20個電影,點擊加載更多會繼續向服務器發送請求然後返回數據。
話不多說,開發者工具看走一走。
這裏我們點擊“加載更多”會發送這樣一個請求。
我們可以從這個請求中發現哪些我們需要的內容呢?
1.Request Url
2.數據類型
3.傳遞的參數
ok,需要的東西我們都找到了,接下來就是代碼了。
import requests
import json
url = 'https://movie.douban.com/j/search_subjects?'
headers = {
'User-Agent':'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0.1) Gecko/20100101 Firefox/4.0.1'
}
param = {
'type': 'movie',
'tag':'喜劇',
'sort': 'time',
'page_limit': '20', #一次取出多少數據
'page_start': '1' #從庫中的第幾部電影取數據
}
response = requests.get(url=url,params=param,headers=headers)
list_data = response.json()
fp = open('./douban.json','w',encoding='utf-8')
json.dump(list_data,fp=fp,ensure_ascii=False)
print('over!')