——更新日志——
23年5月15日
增加JSON庫來優化代碼,提高可讀性
23年1月31日
優化代碼,增加錯誤提示,把正則表達式單獨列出
特別說明:獲取LiveStreamId的正則表達式有變動
22年12月21日
優化了部分代碼,直接輸入直播鏈接即可獲取彈幕
22年7月14日
優化了代碼,增加一張演示圖片
————
運行環境:Python 3.9.13
import requests import re import json import time headers = { "User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.163 Safari/535.1" } print("示例:https://live.kuaishou.com/u/LinMiaoWu") URL = input("直播間鏈接:") # 獲取LiveStreamId r = requests.get(URL, headers=headers) LiveStreamId = re.findall(r'(?<=liveStream":{"id":")(.*?)(?=",)', r.text) danmu_list = "" if LiveStreamId: # 彈幕地址 danmu_list = 'http://livev.m.chenzhongtech.com/wap/live/feed?liveStreamId=' + LiveStreamId[0] else: print("獲取liveStreamID失敗") while LiveStreamId: time.sleep(3) r = requests.get(danmu_list, headers=headers) items = json.loads(eval(r.text)) if items.get("liveStreamFeeds"): datas = items.get("liveStreamFeeds")[0] content = datas.get("content") user = datas.get("author").get("userName") try: print(f"{user}:{content}")# 用於除去Unicode編碼的內容 except: continue
運行結果(用戶名稱已打碼)