import requests import re import pymysql def save_sql(content): con = pymysql.connect( host='localhost', port='3306', user='root', password='123456', db='test' ) db = con.cursor() sql = f'insert into danmu values (content)' db.execute(sql) # 数据库执行sql con.commit() db.close() con.close() url="https://api.bilibili.com/x/v1/dm/list.so?oid=1147917986" headers={ 'referer':'https://www.bilibili.com/', 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.37' } response=requests.get(url=url,headers=headers) #解决网页数据乱码 response.encoding = 'utf-8' print(response.text) content_list=re.findall('<d p=".*?">(.*?)</d>',response.text) print(content_list) #for 循环遍历弹幕 for content in content_list: with open('弹幕.text', mode='a', encoding='utf-8') as f: f.write(content) f.write('\n') print(content) save_sql(content)
时间: 2024-03-15 07:43:11 浏览: 67
python调试文件时发生import requests报错.doc
5星 · 资源好评率100%
这段代码是一个从B站获取弹幕并保存到MySQL数据库中的程序。程序先使用requests库从B站获取指定视频的弹幕信息,然后使用正则表达式从返回的数据中提取出所有的弹幕文本内容。接着,程序使用for循环遍历所有的弹幕,并将每条弹幕分别写入文件和MySQL数据库中。
其中,save_sql函数是用于将弹幕保存到MySQL数据库的函数。在函数中,程序使用pymysql库连接到指定的MySQL数据库,并执行一条INSERT语句将弹幕文本内容插入到指定的数据表中。
需要注意的是,如果您需要运行这段代码,需要安装requests库和pymysql库。另外,您需要将代码中的数据库连接信息修改为您自己的数据库连接信息。
阅读全文