爬虫首战之豆瓣喜剧电影

爬虫初学者实战之爬取豆瓣电影喜剧榜top50并输出为excel

只用简单的requests模块,跟着操作就能成功。

准备工作:
jupyter notebook,Windows10
正式开始爬取:

pip install requests
pip install pandas

安装完成后导入

import requests
import pandas as pd

指定一下url:

url="https://movie.douban.com/j/chart/top_list"

设置参数:
参数怎么来呢?我们需要打开上面的url,然后按照分类进入到喜剧电影排行榜中,按F12,如下:
点击XHR

找到url
复制参数
观察不难发现,这里的start就是起始位置,limit就是输出榜单多少位。

param={
    'type': '24',
    'interval_id':'100:90',
    'action': '',
    'start': '0',#开始位置
    'limit': '50',#一次有多少
}

然后进行一下UA伪装:
获取自己电脑的User-Agent信息,只需要在网址栏输入#about:version,用户代理就是你的电脑的请求头(User-Agent)。

headers={
    'User-Agent':"这里粘贴你的请求头信息"
}
response=requests.get(url=url,params=param,headers=headers)
response=response.json()
print(response)

我们打印response来观察一下:
在这里插入图片描述
不难发现其是一堆字典,那么,就可以请出我们的杀器,pandas,pandas可以把字典转为dataframe,并进行一系列数据处理。
先把这个字典转为dataframe

movie=pd.DataFrame(response)
movie

在这里插入图片描述
可以发现,其中有很多我们不需要的东西,我们可以随便处理一下

movie.drop(['actor_count'],axis=1,inplace=True)
movie.drop(['id'],axis=1,inplace=True)
movie.drop(['is_playable'],axis=1,inplace=True)
movie.drop(['is_watched'],axis=1,inplace=True)
movie.drop(['rank'],axis=1,inplace=True)
movie.drop(['rating'],axis=1,inplace=True)
movie.drop(['vote_count'],axis=1,inplace=True)
movie.drop(['cover_url'],axis=1,inplace=True)

当然,数据处理的方式不止一种,你可以按照需求来进行数据处理。
我们把每一列改一个名字

movie.columns=['演员','上映地区','上映时间','评分','电影名','类型','豆瓣地址']

最后输出为我们想要的格式

movie.to_excel('豆瓣电影喜剧榜前五十.xlsx')

然后再anaconda的文件夹就可以找到我们的这个表格文件:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值