1.目标数据:
数据来源:
目标描述:
建立一个爬虫项目,抓取豆瓣上对电影《我不是药神》的热门短评,采集字段包括:
用户昵称
评论时间
觉得有用的人数
短评内容
2.开始爬虫
采集策略:
本次采集数据拟使用Requests库的requests.get()函数自动爬取html页面,然后使用Beautifulsoup库对下载的“标签树”html文本进行解析和遍历。
实现模拟登陆:
由于豆瓣设有反爬虫机制,若未登录的话则一次只能爬取60条评论,所以本次爬虫获取数据最主要的一个部分是实现模拟登陆:
def Login(headers,loginUrl,formData):
r = s.post(loginUrl, data=formData, headers=headers) # 提交登录信息
print (r.url)
print (formData["redir"])
if r.url == formData["redir"]:
print ("登陆成功") # 若登录后返回的页面是想要爬取的页面则说明登录成功
else:
print ("第一次登陆失败")
page = r.text
soup = BeautifulSoup(page, "html.parser")
captchaAddr = s