利用网络爬虫爬取知乎回答者的信息及回答内容
BB:作为入门爬虫的新手,这些天在网上找一些案例自己动手实现以下并添加自己的东西进去。
这个案例不太复杂,用到的有re、json、requests、pandas库
简单介绍下这几个库的作用:
re(regular expression):它就是正则表达,用来解析html页面的信息。
常用方法:
re.complie(pattern) 一个字符串编译为字节代码,返回一个Pattern object.pattern:你想匹配到的正则表达式,相当于样式;
re.findall(pattern, string) 在指定的字符串中找到要匹配的信息,返回 list列表。string:字符串类型,是你要在哪里进检索;
re.sub(pattern, repl, string) 用repl替换string中的符合pattern表达式的信息。
json(JavaScript Object Notation):使用json模块可以轻松解析包含JSON对象的JSON字符串和文件
json.load:读取包含JSON对象的文件
json.loads:将一个json串还原成python对象
requests:向服务器发送请求
request.get(url,headers)
pandas:数据分析包
pandas.read_csv():读取csv文件
首先明白要爬取些什么内容?
你搜索一个问题时会有很多相关的很多问题,我将问题简化为:获取某一个问题的所有回答者的基本信息以及在该问题下的回答内容。就是这些东西:
怎样才能获取这些信息呢?这些信息都镶嵌在html页面中,在你下滑浏览其他回答时,会不断向服务器发送各种请求,里边有一种是我们比较感兴趣的,那就是jason数据。
1.找到你想要爬取的问题,进入页面,打开开发者模式,刷新页面
2.点击Network,选中XHR
3.在你下滑滚动条看其他回答时,发现不断有request出现,我们要找的数据在name为:answers?...的jason数据中,找不到的话,Ctrl+F,自行查找。
点击后是它的相关信息,其中General中的RequestURL里面的信息是我们想要的,可以把它打开它观察一下。
点击Previews,可以看到包含data,paging两个”大字典”,data中有5个“小字典“,所以说每次会出现5个回答。paging中totals记录的是当前话题下有多少回答。
我们随便打开一个data中的内容,author记录的回答者的信息,有name、gender(1:男,0:女,-1:无)、voteup_count:赞数、comment_count:评论数量。在content中是回答内容。
现在数据的藏身之处找到后,就开始搞他了
利用网络爬虫爬取知乎回答者的信息及回答内容相关推荐
- python3网络爬虫--爬取b站用户投稿视频信息(附源码)
文章目录 一.准备工作 1.工具 二.思路 1.整体思路 2.爬虫思路 三.分析网页 1.分析数据加载方式 2.分词接口url 3.分析用户名(mid) 四.撰写爬虫 五.得到数据 六.总结 上次写了 ...
- 【网络爬虫】运行该程序获取距离2022年高考仅剩多少天,一个利用网络爬虫爬取高考倒计时的python程序
程序解决问题描述如下: 利用网络爬虫在一个2022年高考倒计时网站上爬取距离2022年高考的天数,并将爬取到的高考倒计时天数以文本文件保存到电脑磁盘中. 打开网址按F12可以看到我们利用网络爬虫从网址 ...
- python3网络爬虫--爬取b站视频评论用户信息(附源码)
文章目录 一.准备工作 1.工具 二.思路 1.整体思路 2.爬虫思路 三.分析网页 1.分析网页加载方式 2.分析数据接口 3.获取oid 四.撰写爬虫 五.存储数据 六.总结 你爱我,我爱你,蜜雪 ...
- 如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)
前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往下继续深入. 一.代码实现 1.修改Scrapy项目中的items.py ...
- python朋友圈动态_如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)
前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往下继续深入. 一.代码实现 1.修改Scrapy项目中的items.py ...
- python抓取朋友圈动态_如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)...
原标题:如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下) 前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往 ...
- 利用python爬取知乎评论_一个简单的python爬虫,爬取知乎
一个简单的python爬虫,爬取知乎 主要实现 爬取一个收藏夹 里 所有问题答案下的 图片 文字信息暂未收录,可自行实现,比图片更简单 具体代码里有详细注释,请自行阅读 项目源码: 1 # -*- c ...
- 【爬虫】利用Python爬虫爬取小麦苗itpub博客的所有文章的连接地址并写入Excel中(2)...
[爬虫]利用Python爬虫爬取小麦苗itpub博客的所有文章的连接地址并写入Excel中(2) 第一篇( http://blog.itpub.net/26736162/viewspace-22865 ...
- Python:网络爬虫爬取某表情包网站
Python:网络爬虫爬取某表情包网站 参考: 爬虫基础知识点汇总(html文件基础和4个常用库 超级详细长文预警) [爬虫教程]吐血整理,最详细的爬虫入门教程~ HTML的简单介绍 HTML的全称为 ...
最新文章
- leetcode算法题--二叉树中的伪回文路径
- EtherType :以太网类型字段及值
- LeetCode-动态规划-198. 打家劫舍
- python外星人入侵游戏代码_Python游戏:外星人入侵游戏编程完整版!内附代码
- 高速通道-冗余物理专线接入-健康检查配置
- Android之Intent传递数据
- python regex应用
- 众辰nz200变频器使用说明书_一些电工听到变频器有点懵,今天我们一起来分析变频咋回事?...
- ASP.NET页面传值方式
- 要注意观察我们周围的人,不要一天只是低头写代码!
- Mysql报错 message from server: Host '61.148.245.96' is not allowed to connect to this MySQL server
- ubuntu安装tim
- 希尔伯特空间等各空间介绍-数据升维以及核函数选择
- 有限元法基本思想和分类
- 阿里云无影云桌面怎么使用?用户名密码连接登录新手教程
- html里面的view怎么修改,asp.net mvc 3-在局部视图中修改MVC 3 ViewBag不会保留到_Layout.cshtml...
- C++ 中ANSI/ASII/GB2312/Unicode/Utf-8编码的区别
- NLP学习(二)中文分词技术
- 概率论与数理统计-ch2-随机变量及其分布
- web测试方法总结 -- 非原创,存留一份