import re, requests
from lxml import etree
class Blbl(object):
def __init__(self, url):
self.url = url
self.headers = {
'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36'
}
def get_html(self,url):
try:
return requests.get(url, headers=self.headers)
except:
print("获取失败")
def get_xml(self, cid):
url = "https://comment.bilibili.com/{}.xml"
response = self.get_html(url.format(cid))
html = etree.HTML(response.content)
danmu_list = html.xpath('//d/text()')
with open('danmu.text', 'w', encoding='utf-8') as f:
for danmu in danmu_list:
f.write(danmu + '\n')
def run(self):
response = self.get_html(self.url)
# print(html)
pattern = re.compile(r'cid=(\d+)\&')
cid = pattern.findall(response.text)[0]
self.get_xml(cid)
if __name__ == '__main__':
url = 'https://www.bilibili.com/video/av16757535'
bili = Blbl(url)
bili.run()
爬bilibili弹幕
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 最近有朋友在群上面说做个b站某视频的弹幕统计列表,筛选出弹幕最多的那条!那么如何解决这个问题呢?首先肯定是要获取弹...
- Android带弹幕的视频播放器源码 主要功能列表: 1) 弹幕功能,这个可是必须的; 2) 首页中自动、手动轮播...