思路


我的整个算法的思路还是很简单的,文字版步骤如下:
1、通过话题广场进入某个话题的页面,避免了登陆注册页面的验证,查找到对应要爬取的话题,从 url 中得到话题id
2、该页面的所有资源采用了延迟加载,如果采用模拟浏览器进行加载的话还是很麻烦,经研究后发现知乎有前后端数据传输的api,所以获取数据方面是基于知乎提供的api
3、设置 offset 和 limit,以及将爬取的评论用几个正则和简单的去重操作进行处理,就能开始获取数据并存储到数据库里

用法


1、进入某个话题,得到话题ID,拿西邮为例,url为:https://www.zhihu.com/topic/20019540/top-answers,
则得到话题id为 20019540,并在在 main 中修改对应变量值
2、在 ZhiHuCrawler.py 代码中设置 q_num (爬取的精华问题的个数), ans_num (爬取的回答的问题个数)
3、在 saveMysql 方法中修改 mysql 的相关连接信息
4、执行该 ZhiHuCrawler 脚本

局限


1、知乎的反爬很简单,但是每年都在变,所以我版本适用于 2018 年的知乎,后续未知;
2、话题id只能手动获取,想改成非手动也很容易,可以拿上面的思路实现
3、去除脏数据时(评论去重)遇到了些困难还没有解决,比如对于恶意刷评论(内容重复),我们需要去重,但 mysql 中blog 长文本类型无法设置为唯一索引,所以现在设想解决方法有:
  I) 将评论编成 MD5 值
  II) 改用非关系型数据库实现去重,比如 Reddis

github


https://github.com/bw98/ZhiHu-Crawler

转载于:https://www.cnblogs.com/Bw98blogs/p/10160781.html

用于爬取知乎某个话题下的精华问题中所有回答的爬虫相关推荐

  1. python爬取知乎话题广场_用于爬取知乎某个话题下的精华问题中所有回答的爬虫...

    思路 我的整个算法的思路还是很简单的,文字版步骤如下: 1.通过话题广场进入某个话题的页面,避免了登陆注册页面的验证,查找到对应要爬取的话题,从 url 中得到话题id 2.该页面的所有资源采用了延迟 ...

  2. python3爬取知乎某话题下的若干个问题及其回答

    思路:通过selenium的webdriver实现页面的点击.下来等操作.页面完全加载后通beautifulsoup来查找相应的标签.将数据放到列表中,然后通过xlwt创建excel,并把数据存进去. ...

  3. 数据挖掘 文本分类 知乎问题单分类(二):爬取知乎某话题下的问题(数据爬取)

    数据挖掘 文本分类 知乎问题单分类(二):爬取知乎某话题下的问题(数据爬取) 爬虫目标 Scrapy框架介绍 Scrapy框架原理 [^1] Scrapy工作流程 [^2] 具体实现 安装Scrapy ...

  4. python实战1.0——爬取知乎某问题下的回复

    python实战1.0--爬取知乎某问题下的回复 确定问题 爬取 进行简单筛选 保存数据 # 获取问题下的回复总数 def get_number():url = 'https://www.zhihu. ...

  5. 根据关键词组合,爬取知乎某个问题下所有含有关键词的回答

    其中,必须含有的关键词以空格间隔,或含有的关键词以+间隔,例如,查找知乎ID为23437659的问题:"国内你最喜欢的城市(除家乡外生活过的城市)是哪里?为什么?",要求回答中含有 ...

  6. Python爬取知乎电影话题回答,采集提及次数前50的电影

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 以下文章来源于苏生不惑,作者苏生不惑 如果在家无聊推荐几部经典电影给你看看. 这 ...

  7. python爬取知网论文关键词_Python爬虫根据关键词爬取知网论文摘要并保存到数据库中【入门必学】...

    搜索出来的结果和知网上的结果几乎一样,另外以后面试找Python工作,项目经验展示是核心,如果你缺项目练习,去小编的Python交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面很多新 ...

  8. python爬知网全文期刊数据库_Python爬虫根据关键词爬取知网论文摘要并保存到数据库中【入门必学】...

    搜索出来的结果和知网上的结果几乎一样,另外以后面试找Python工作,项目经验展示是核心,如果你缺项目练习,去小编的Python交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面很多新 ...

  9. python爬虫论文摘要怎么写_Python爬虫根据关键词爬取知网论文摘要并保存到数据库中【入门必学】...

    搜索出来的结果和知网上的结果几乎一样,另外以后面试找Python工作,项目经验展示是核心,如果你缺项目练习,去小编的Python交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面很多新 ...

  10. Python 网络爬虫实战:爬取知乎回答中的全部图片

    平时逛知乎的时候,经常能看到很多很棒的图片,精美的壁纸,搞笑的表情包,有趣的截图等等,总有想全部保存下来的冲动. 于是在一个小老弟的拜托之下,我把之前的知乎爬虫改造了一下,改装成了一个可以下载知乎回答 ...

最新文章

  1. php 上传大文件涉及的配置,upload_max_filesize,post_max_size
  2. 极光商智®服务器2007今日正式发布
  3. js将json数据保存到本地
  4. Django 【第二十篇】后端CORS解决跨域问题
  5. 如何设置ad18捕捉图标_图标设计中的像素捕捉
  6. 实验2 java_《Java程序设计》实验2
  7. LeetCode 1634. 求两个多项式链表的和
  8. 【不吹不黑】详解容器技术架构、网络和生态
  9. 从一线技术人员到阿里合伙人,主导了去“IOE”,没有他,阿里只能给美国公司打工!...
  10. 整理了Linux常用命令变量
  11. echarts可以去掉边距吗_又有近视又有散光怎么办?近视手术可以同时去掉吗?...
  12. Netflix的快速产品集成测试
  13. innodb下的mvcc_Mysql事务隔离以及MVCC实现原理
  14. 改革开放40年·软件产业
  15. 【三维路径规划】基于matlab RRT算法无人机三维路径规划【含Matlab源码 1270期】
  16. 创业文档: 软件定制开发合同
  17. 29.正向和负向Lookahead
  18. 脚踩智能汽车春风,百度踏上千亿美元市值征程
  19. 在法国读计算机研究生的日子开始了
  20. WIN32 opengl环境搭建

热门文章

  1. 法语语法学习笔记——代词(2)
  2. 计算机为什么不能装win7,i5 8400 cpu能装win7吗?为什么安装不了win7
  3. 用qt 编译qt moc
  4. MyBatis详解(一):入门程序
  5. 最新机器视觉研究团队汇总
  6. 结合百度搜索引擎SEO优化指南揭密百度SEO建议
  7. Sql语句查询今天、昨天、本月等日期数据
  8. imo与slack竞品分析报告
  9. 快速导出PDF文件中所有图片(使用Adobe Acrobat 10 )
  10. 【SQL解析】- SQL血缘分析实现篇01