【Python3 爬虫】16_抓取腾讯视频评论内容
2024-08-28 10:18:18
上一节我们已经知道如何使用Fiddler进行抓包分析,那么接下来我们开始完成一个简单的小例子
抓取腾讯视频的评论内容
首先我们打开腾讯视频的官网https://v.qq.com/
我们打开【电视剧】这一栏,找到一部比较精彩的电视剧爬取一下,例如:我们就爬取【下一站,别离】这部吧
我们找到这部电视剧的评论如下图:
我们看到上图标记部分【查看更多评论】
我们首先在Fiddelr中使用命令clear清除之前浏览的记录
输入命令直接回车即可
接着我们点击【查看更多评论】,此时再次看Fiddler,我们可以看到【JS】这个小图标
我们右键上图标记部分
第一次点击
接着【Copy】---【Just Url】
地址为:
我们将此地址放到浏览器查看效果如何?
现在我们还没发现什么规律,那我们再点击一次
第二次点击
浏览器显示
我们将上述2个地址放在word进行分析后,分析结果如下:
我们可以看到黄色标记部分没什么规律,最后红色标记是按1递增
那么我们验证下黄色标记部分是否是必须的呢?删除黄色部分放在浏览器执行,查看结果,有没有黄色部分结果一致,那么我们接下来开始代码了
import urllib.request
import re
import urllib.error
headers=("User_Agent","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0")
#自定义opener
opener = urllib.request.build_opener()
opener.addheaders = [headers]
urllib.request.install_opener(opener) cursor_id = '6394260346548095809'
v_id =1524402700840
url = "https://video.coral.qq.com/varticle/2580302776/comment/v2?callback=_varticle2580302776commentv2&orinum=10&oriorder=o&pageflag=1&cursor="+cursor_id+"&scorecursor=0&orirepnum=2&reporder=o&reppageflag=1&source=9&_="+str(v_id)
for i in range(0,10):
content = urllib.request.urlopen(url).read().decode("utf-8")
patnext = '"last":"(.*?)"'
nextid = re.compile(patnext).findall(content)[0]
patcomment = '"content":"(.*?)",'
comment_content = re.compile(patcomment).findall(content)
for j in range(1,len(comment_content)):
print("-----第"+str(i)+str(j)+"条评论内容是:")
#print(eval("u"+"\'"+comment_content[j]+"\'"))
try:
t1 = comment_content[j].encode('latin-1').decode('unicode_escape')
print(t1)
except Exception as e:
print("***********该条评论含有有特殊字符************")
url="https://video.coral.qq.com/varticle/2580302776/comment/v2?callback=_varticle2580302776commentv2&orinum=10&oriorder=o&pageflag=1&cursor="+nextid+"&scorecursor=0&orirepnum=2&reporder=o&reppageflag=1&source=9&_="+str(v_id+i)
最新文章
- 报错:init: Could not find wglGetExtensionsStringARB!
- fineui刷新父页面
- HTML基础篇之HTML基本元素
- 关于SAP日期操作的几个函数
- [转]How to add new table in NopCommerce
- php xdebug配置
- 《BI那点儿事》数据流转换——多播、Union All、合并、合并联接
- 关于hasOwnProperty()方法的应用
- overload与override
- 如何将ASP.NET-WebApi发布到IIS6.0上(转)
- java 三种工厂模式
- Bate敏捷冲刺每日报告--day5
- Java集合框架总结
- 工控随笔_17_西门子_WinCC的VBS脚本_06_过程和函数
- 流媒体服务器SRS部署
- hdu 1277 AC自动机入门(指针版和数组版)
- go语言中的反射reflect
- mysql 执行计划分析三看, explain,profiling,optimizer_trace
- 使用 docker compose 安装 tidb
- Oracle EBS OM 已存在的OM订单增加物料
热门文章
- 【转】Ubuntu 14.04.3上配置并成功编译Android 6.0 r1源码
- java网络通信:TCP协议
- ubuntu 16.04.1 LTS zabbix-agent安装
- 设计模式-设计原则(Design Principle)
- 列(Column)
- Xamarin XAML语言教程构建ControlTemplate控件模板 (三)
- Fiddler 高级用法:Fiddler Script 与 HTTP 断点调试
- struts2中css,js等资源无效 非路径问题(新手问题)
- [xsy1294]sub
- 【树状数组】【枚举约数】 - Ambitious Experiment