爬虫练习-爬取豆瓣网电影评论用户的观影习惯数据
以豆瓣当下实时热门电影《热烈》作为分析对象
环境:
Python3(Anaconda3)
PyCharm
Chrome浏览器
主要模块:
BeautifulSoup
requests
pymysql
一.概括
目标:获得电影《热烈》的用户观影习惯数据
代码概括:
1.使用requests和bs4爬取电影《热烈》所有短评长评及其用户 2.爬取所有用户的观影数据并使用pymysql存入mysql数据库
3.对数据进行分析
二、(重点)登录豆瓣网(带有反爬虫)
豆瓣网使用一定的反爬虫技术,根据我的实验经验,主要是针对用户ID、用户IP和请求头的过滤
解决方案:
1携带登陆成功的cookie去请求get登陆
2.使用代理IP
3大量请求头随机使用
2.1使用小象代理IP
2.2大量请求头随机使用
2.3测试IP是否可用
2.4 登录豆瓣网
三.电影《热烈》全部长评reviews
以五星长评为例,遍历五星长评的网页,使用bs4爬取所需网页ontent,再读出所需信息得到信息list。
根据前文获得的headers和proxies,发出get请求,获取response。
使用bs4做网页解析,获取所需要的content
将提取的content提炼得到list
成功得到5星长评的第一页的用户list。
四.电影《热烈》全部短评comments
以五星短评为例,遍历短评的网页,使用bs4爬取所需网页content,筛选出五星短评content,再读出所需信息得到信息list。
根据前文获得的headers和proxies,发出get请求,获取response。
使用bs4做网页解析,获取所需要的content。
提取的content,过滤出五星短评,并提炼得到list
成功得到短评的第一页的五星用户list
五.存入数据库
以上内容经过去重,可以获得电影《热烈》的全部五星用户,现将这些五星用户list存入mysql数据库。
同样的方法可以获得全部的4星、3星、2星、1星用户,并都存入数据库或数据表
六.获取用户观影数据
已知用户主页链接,可以获得用户的观影数据。
以下代码是根据用户user_id 获取用户观影页面一页的数据。
已获取 list 数据,后续数据库操作和数据处理操作,就不详细展开了。
下面展示分析成果,对表格部分内容进行截取,将用户id做了打码处理。
生成条形图展示。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgcjeei
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01