python爬b站评论_学习笔记(1):写了个python爬取B站视频评论的程序
学习笔记(1):写了个python爬取B站视频评论的程序
import requests
import json
import os
table='fZodR9XQDSUm21yCkr6zBqiveYah8bt4xsWpHnJE7jL5VG3guMTKNPAwcF'
tr={}
for i in range(58):
tr[table[i]]=i
s=[11,10,3,8,4,6]
xor=177451812
add=8728348608
def dec(x):
r=0
for i in range(6):
r+=tr[x[s[i]]]*58**i
return (r-add)^xor
def enc(x):
x=(x^xor)+add
r=list('BV1 4 1 7 ')
for i in range(6):
r[s[i]]=table[x//58**i%58]
return ''.join(r)def getComment(Bvid , page):
Avid = dec(Bvid)
url = "https://api.bilibili.com/x/v2/reply?pn=" + str(page) + "&type=1&oid=" + str(Avid) + "&sort=2"
data = requests.get(url)
content = json.loads(data.text)
return content['data']['replies']
def getHotComment(Bvid , page ='1'):
Avid = dec(Bvid)
url = "https://api.bilibili.com/x/v2/reply?pn=" + str(page) + "&type=1&oid=" + str(Avid) + "&sort=2"
data = requests.get(url)
content = json.loads(data.text)
return content['data']['hots']
if __name__=='__main__':
print('请输入视频的BV号')
BVID = input()
os.system("cls")
print('请输入想获取的评论的页数')
page = input()
with open('comments.txt','w',encoding='utf-8') as f:
for pg in range(1,int(page)+1):
for index in range(19):
commonComment = getComment(BVID,page)
f.write(commonComment[index]['member']['uname']+':\n')
f.write(commonComment[index]['content']['message']+'\n')
其中BV转AV的程序源自:
作者:mcfx
链接:https://www.zhihu.com/question/381784377/answer/1099438784
python爬b站评论_学习笔记(1):写了个python爬取B站视频评论的程序相关推荐
- python爬取b站评论_学习笔记(1):写了个python爬取B站视频评论的程序
学习笔记(1):写了个python爬取B站视频评论的程序 import requests import json import os table='fZodR9XQDSUm21yCkr6zBqiveY ...
- python人工智能入门纳米学位_学习笔记(一) - 机器学习纳米学位
不久前我在Udacity报名了数据分析和机器学习两门纳米课程.之所以对这个感兴趣是因为关注人工智能方面的资讯有一段时间了,觉得这是未来的趋势,希望今后能够在这方面有所成绩.选择纳米课程是因为我觉得它与 ...
- 编程入门python java和c语言_学习编程适不适合从Python入门?哪种语言更适合入门?...
本文对比了C语言和Python语言,分析它们作为编程入门语言各自的利弊,并给出了我推荐的编程学习道路. 我本身已经入门了Python脚本语言,在进阶C语言和JAVA语言后,Python重学就轻松很多, ...
- python描述符魔术方法_学习笔记-Python基础9-面向对象编程OOP-类的成员描述符(property)、类的常用内置属性、类的常用魔术方法、类和对象的三种方法...
一.类的成员描述符(property) 类的成员描述符是为了在类中,对类的成员属性进行相关操作而创建的一种方式,大部分属于数据清洗 属性有三种操作:get获取属性值.set修改或添加属性.delete ...
- python异常数据筛选_学习笔记(06):Python数据清理实践-数据过滤,06Python,清洗,实战,筛选...
数据筛选:直接引用,选择行列,基础索引,loc和iloc,如何区分 import三个库:pandas as pd,os, numpy as np os.chdir('数据存放路径') 读取 变量 = ...
- python自动化脚本编写教程_开发工具pycharm写第一个Python自动化程序案例|python基础教程|python入门|python教程...
https://www.xin3721.com/eschool/pythonxin3721/ 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. ...
- python实现qq登录腾讯视频_Python爬取腾讯视频评论的思路详解
一.前提条件 安装了Fiddler了(用于抓包分析) 谷歌或火狐浏览器 如果是谷歌浏览器,还需要给谷歌浏览器安装一个SwitchyOmega插件,用于代理服务器 有Python的编译环境,一般选择Py ...
- Scipy Lecture Notes学习笔记(一)Getting started with Python for science 1.2. The Python language
Scipy Lecture Notes学习笔记(一)Getting started with Python for science 1.2. The Python language 1.2.2. 基本 ...
- 友盟统计+渠道包_学习笔记
友盟统计+渠道包_学习笔记 资料: 官网:https://developer.umeng.com/docs/66632/detail/66889#h3-u5E38u89C1u95EEu9898 视频资 ...
最新文章
- uniapp动态显示数组_uni-app学习:4、数据绑定(变量、数组、显示控制)
- redis配置环境变量
- SDL 库 无法解析的外部符号 __imp__fprintf
- c语言中error c2601,C 语言 dd.cpp(46) : error C2601: 'main' : local function definitions are illegal...
- python批量音频转格式_python将mp3格式批量转化为wav格式
- windows离线安装grunt_chrome火狐离线安装包下载
- 数据结构--循环队列
- OPNET网络仿真分析-1.1.1、网络仿真简介
- IEEE 1588 报文封装
- ubuntu14.0.4安装drozer
- java课程 数独 文库_数独java代码
- 三星 盖世3 刷CM10.2 请插入sim卡
- 使用burp进行网站爆破
- 【Matlab人脸识别】KL变换人脸识别【含GUI源码 859期】
- 工程电磁场导论第三章总结
- CleanMyMac2022Mac电脑免费好用的清理软件
- 3.23学习内容,竖立seekbar,sql获取删除重复数据
- 服务器版本与操作系统兼容性,服务器跟操作系统兼容性
- 【2019.08.20】 python 下载wallhaven壁纸原图, 分别使用同步、异步方式(aiohttp_requests,aiofiles),对比下载速度
- 人工智能赋能教师教育的真知与实践
热门文章
- VUE.JS邮箱、手机、车牌自定义验证规则
- adb reboot重启手机命令
- 微信小程序——日常踩坑(wx.pageScrollTo滚动时有抖动问题)
- Word VBA:对数字批量加千分位,设置小数位数和设置负数格式
- 自学杨中科老师视频 68.Part3-19:EF Core自引用的组织结构树(Av500515272,P68) 出现错误
- Ubuntu xmodmap 键位映射
- TurboLinux入门教程:第六课Linux与其他操作系统的区别(转)
- 实机安装CentOS7.9操作系统图文(保姆级)教程
- SQL Server 2008R2 日志文件收缩
- maven md5依赖包