Python百日百行代码挑战-day3,爬虫练习,B站弹幕获取
虽然我也不知道这个文章发不发的出去,day2的爬虫案例审核就没通过来着,可能爬虫是一个敏感点?容易侵犯版权?我尽量写的隐晦一点算了,介绍清楚学习及其原理即可,反正也就是一个学习笔记吧。
需要用到的包:
os
requests
lxml
B站提供了弹幕接口,首先你要找到这个接口在哪,方法如下:
F12找网页这个控制台,在Network/All下面,有那个搜索框,搜cid,找到cid是多少。然后弹幕接口就出来了,是:
https://api.bilibili.com/x/v1/dm/list.so?oid=cid
cid是多少写上去就行
然后看到这么一个界面,你就成功了。
爬虫过程中,就在这个弹幕接口的网页界面进行操作。代码相当简单,直接写上了
import requests
from lxml import etree
import os
os.chdir('写你的保存路径')
url = 'https://api.bilibili.com/x/v1/dm/list.so?oid=写你自己想爬的网页cid'
r = requests.get(url)
res = r.content
page = etree.HTML(res) # 解析网页
result = page.xpath('//d/text()') # 弹幕都在d 标签下面,先//表示从匹配选择的当前节点选择文档节点,不考虑位置,完了再/text()一下,表示在d 节点下面提取文本信息
with open('1.txt','w',encoding='utf-8') as f:
f.write('\n'.join(result)) # join()把列表变字符串了
记录过程中仅记录核心原理部分,不会展现所有的百行代码,我要自己下去写着玩了
防火防盗防诈骗