由于本人爬取豆瓣影评的时候,我想爬取的比较完善,因为我看大多都是爬取短评而已,本人想爬取其他内容所以写下这篇,希望对大家有帮助。
一、pip对库的调用
下载命令
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple +库名
需要安装的库有 re,requests
内建库(time,random)
图:

二、确认网站是什么类型
判断网页时动态的还是静态的可以点击右键,查看网页源代码,
复制“西楼尘”三个字在网页源代码中,具体方法时ctrl+f
搜索,如果在网页源代码有内容提示的话(高亮题目)

基本就是可以确定时静态的(可以多复制其他内容实验一下)。通过这里可以知道该网站时静态的。
三、查询数据来源
我搜索的是“寄生兽”所以网址:https://movie.douban.com/subject/27010768/comments?start=0&limit=20&sort=new_score&status=P

可以看到有五个数据是我们想要的,然后打开网页源代码

通过re匹配抓取到 点赞人数,用户名,评分,发布时间,短评
但这个网页还需要抓取到 发布城市,加入时间也可以通过re正则爬取到。

点击链接,打开
找到想抓去内容
7个数据就可以抓取下来了。
四、代码部分`

import re
import requests
import time
import randomdef get_url(url):headers={"User-Agent":'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36',"Cookie":'你的cookie'  #尝试过很多用反爬手段这种是最简单的反爬了}try:html=requests.get(url,headers=headers)html.raise_for_status()text=html.textreturn textexcept:print("爬取失败")
#1.点赞人数,2.用户名,3.评分,4.时间,5.短评
def prase_url(url):text=get_url(url)content = re.compile(r'<span class="comment-vote">.*? <span class="votes">(.*?)</span>.*?<span class="comment-info">.*?'r' <a href=".*?>(.*?)</a>.*?<span class=".*?title="(.*?)"></span>.*?<span class=.*?title="(.*?)">.*? 'r'<span class="short">(.*?)</span>',re.S)results = re.findall(content, text)for i in results:yield i
#1、发布城市 2、加入时间
def get_newurl(url):text = get_url(url)content = re.compile('<div class="avatar">.*?<a title=.*?href="(.*?)">',re.S)results = re.findall(content, text)for new_url in results:new_text=get_url(new_url)new_content = re.compile('<div class="user-info">.*?<a href=.*?>(.*?)</a><br />.*?<div class="pl">.*?<br/>(.*?)</div>', re.S)new_results = re.findall(new_content, new_text)for i in new_results:yield idef main():for i in range(0,25):print("正在爬取第{}页".format(i+1))url="https://movie.douban.com/subject/27010768/comments?start="+str(i*20)+"&limit=20&sort=new_score&status=P"for i,s in zip(get_newurl(url),prase_url(url)):with open('job.csv', 'a+', encoding='gb18030') as fh:# 处理避免读取歧义fh.write(i[0].replace(',','、') + "," + i[1] + "," + s[0]+ "," + s[1] + "," + s[2] + ',' + s[3] +','+s[4]+ "\n")time.sleep(random.random())print(i,s)
if __name__=="__main__":main()

注:编码格式方面建议不要用utf-8-sig因为出现乱码,cookie要用你本人的
需要在.py文件下新建job.csv文件,此时可查询并分析
爬取发布城市,加入时间会挺久的,因为是从一个网页到另一个网页,如果有更好的方法,可以私聊谈一下
这是本人第一次写的代码可能不太好,有什么可以私信我

爬取豆瓣短影评(发布城市,加入时间,点赞人数,用户名,评分,发布时间,短评)相关推荐

  1. python爬虫豆瓣电影评价_使用爬虫爬取豆瓣电影影评数据Python版

    在 使用爬虫爬取豆瓣电影影评数据Java版 一文中已详细讲解了爬虫的实现细节,本篇仅为展示Python版本爬虫实现,所以直接上代码 完整代码 爬虫主程序 # 爬虫启动入口 from C02.data ...

  2. Python爬取豆瓣网影评展示

    Python爬取豆瓣网影评展示 需要的库文件 requests beautifulsoup wordcloud jieba matplotlib 本文思想 1.访问指定的网页 #获取指定url的内容 ...

  3. 完全小白篇-用python爬取豆瓣电影影评

    完全小白篇-用python爬取豆瓣影评 打开豆瓣电影 随机电影的所有影评网页 跳转逻辑 分析影评内容获取方法 逐一正则提取影评 针对标签格式过于多样的处理 针对提出请求的频率的限制 存储方式(本次sq ...

  4. 使用爬虫爬取豆瓣电影影评数据Java版

    2019独角兽企业重金招聘Python工程师标准>>> 近期被<我不是药神>这部国产神剧刷屏了,为了分析观众对于这部电影的真实感受,我爬取了豆瓣电影影评数据.当然本文仅讲 ...

  5. 简单的爬虫例子——爬取豆瓣Top250的电影的排名、名字、评分、评论数

    爬取思路: url从网页上把代码搞下来 bytes decode ---> utf-8 网页内容就是我的待匹配的字符串 ret = re.findall(正则,待匹配的字符串), ret 是所有 ...

  6. python电影评论的情感分析流浪地球_python爬取豆瓣流浪地球影评,生成词云

    代码很简单,一看就懂. (没有模拟点击,所以都是未展开的) 地址: https://movie.douban.com/subject/26266893/reviews?rating=&star ...

  7. 基于Scrapy框架爬取豆瓣《复联4》影评,并生成词云

    基于Scrapy框架爬取豆瓣<复联4>影评,并生成词云 1. 介绍及开发环境 2. 爬虫实现 2.1 新建项目 2.2 构造请求 2.3 提取信息 2.4 数据存储 2.4 运行结果 3. ...

  8. python爬取豆瓣影评理论依据_我用Python爬取了豆瓣的影评

    使用Python爬取豆瓣的影评,比爬取网易云简单,因为不需要设置特定的headers,关于网易云说几句,很难爬取,对请求头有着严格的要求,前几年那会还好些. 爬取结果分为:用户名,评价的星级,评论的内 ...

  9. python爬取豆瓣电影评论_python 爬取豆瓣电影评论,并进行词云展示及出现的问题解决办法...

    def getHtml(url): """获取url页面""" headers = {'User-Agent':'Mozilla/5.0 ( ...

最新文章

  1. LazyT 延迟加载
  2. C#_关于静态类和静态方法(转)
  3. 【ACM】二叉搜索树(Binary Search Tree /BS Tree) 小结
  4. 负载均衡算法-轮询均衡
  5. 干货 | 清华大学郑方:语音技术用于身份认证的理论与实践
  6. python3----智能检测编码的工具
  7. C++继承中的访问级别
  8. -webkit-border-radius和-moz-border-radius(转)
  9. 昨天事情还是比较多,让我晚上加了会班
  10. C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二)让物体动起来②
  11. linux不能上网如何配置
  12. 迷宫(AHOI2016初中组T3)
  13. IAR报错:新手刚使用K60(非UD)时容易碰到的问题:芯片被锁,missing FlashK60XX.board
  14. Python数据获取——图片数据提取
  15. 架构师之殇:一个反对“平台团队”的案例
  16. 酷睿i5 10300h参数 i5 10300h处理器属于什么水平 i510300h相当于台式机
  17. pytorch-gradual-warmup-lr安装
  18. Spring Boot CORS跨域资源共享实现方案
  19. VS2019即将完成…一切即将准备就绪
  20. 离散数学——用c/c++求命题公式的主范式

热门文章

  1. spring-boot-starter-data-redis使用简介
  2. 蓝桥杯物联网基础图文教程——GPIO输出控制LD5亮灭
  3. 小鸡拿着蚯蚓闯关的java游戏,饥饿蚯蚓大闯关游戏下载
  4. 如何查找自己的微信公众号主页并复制链接
  5. kies air java 证书_Java ToStringBuilder類代碼示例
  6. 进销存系统_项目环境搭建代码生成登录接口(2)
  7. 舒适!当PicGo使用Gitee作为图床时
  8. c++捷径教程(第三版)chapter11.1类queue的定义和使用的输出问题
  9. 糖果浏览器1.96很严重的问题
  10. adas自动驾驶叉车CAN通讯隔离EMC解决方案