今天我们看一下如何爬取豆瓣的电影信息。
首先我们打开豆瓣电影的网页,这里我随便一个分类。
这里我们看到页面中只有这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!')