python爬虫爬取B站弹幕

因为本人技术有限,无法实现一步到位,所以分两步实现。
第一步:
1.首先需要准备需要的库。
import re
import requests
import urllib
import bs4
2.就直接上代码。

import re
import requests
import urllib
import bs4
def main():
    url = "此处输入你要爬取的视频的当前网址"
    datalist = get_html(url)
    cid = saveurl(datalist)
    dmurl='https://comment.bilibili.com/'+cid+'.xml'
    print('请点击此网站:',dmurl)
def get_html(url):
    headers = {
     
        'User-Agent': '输入自己的User-Agent'
    }         #请输入你个人的User-Agent
    response = requests.get(url, headers=headers)
    return response.text
def saveurl(baseurl):
    findlink=re.compile(r'"cid":(.*?),"bvid":')
    cid = re.findall(findlink,baseurl)
    cid = list(cid)[1]
    return cid
if __name__ =="__main__":
    main()
    print("爬取完毕")

3.如何获取User-Agent。
打开你要爬取的网页,按 F12 打开开发者模式
python爬虫爬取B站弹幕_第1张图片
然后刷新网页。并迅速点击红色圆圈按钮暂停。
python爬虫爬取B站弹幕_第2张图片
将鼠标放在绿色线条的最左侧(还是在绿色线上),然后左键单击它

python爬虫爬取B站弹幕_第3张图片
点击www.bilibili.com的文件,对,就是那个剩下的文件。
python爬虫爬取B站弹幕_第4张图片
然后在你文件的最最最下面,就出现了你的User-Agent,因为名字我都帮大家写好了,所以大家只用将冒号后面的内容复制粘贴进去就可以了。
4.运行代码,会打印出一个网站,里面就是你要的弹幕,但是还需要进行数据处理(我多次尝试用不同的解码方式去读取,都显示的是一堆乱码,希望有大佬,可以指点!
第二步:
1.将爬取到的网站中的所有信息,复制粘贴进一个txt文件中。
2.上代码。

import re
danmu=re.compile(r'(.*?)')
file=open("输入你存入网站内容的文件名","r",encoding="utf-8")
text=file.read()
data=re.findall(danmu,text)
File=open("输入你想要创建的文件名,弹幕信息将会被存储在这里","a",encoding="utf-8")
for i in data:
    File.writelines(i)
    File.writelines("\n")
File.close()
file.close()

3.将你的文件名都填入代码中,然后运行。弹幕就被存入文件了。

你可能感兴趣的:(笔记,python,爬虫,数据分析)