import requests import json import threading import jsonpath import string
def bilixml(av): try: headers = {"user-agent": "Mozilla/5.0"} url = f"https://api.bilibili.com/x/player/pagelist?aid={aid}&jsonp=jsonp" response = requests.get(url,headers=headers).text json_data = json.loads(response)
id_url = f"https://api.bilibili.com/x/web-interface/view?aid={aid}" id_response = requests.get(id_url,headers=headers).text id_json_data = json.loads(id_response)
cid = jsonpath.jsonpath(json_data,"$..cid") tap = jsonpath.jsonpath(json_data,"$..part") id = str(jsonpath.jsonpath(id_json_data,'$..data.title')) page = 0 for mua in cid: if(cid == id[0] == 'False'): print('视频地址错误') elif (len(cid) == 1): getup = requests.get("https://api.bilibili.com/x/v1/dm/list.so?oid=" + str(mua), headers=headers) getup.encoding = 'utf-8' timedate = f"D:/{id[0]}.xml" print(timedate) file = open(timedate, "w", encoding='utf-8').write(getup.text) else: getup = requests.get("https://api.bilibili.com/x/v1/dm/list.so?oid=" + str(mua), headers=headers)
getup.encoding = 'utf-8' timedate = f"D:/{id[0]}-{tap[page]}.xml" print (timedate) file = open(timedate,"w",encoding = 'utf-8').write(getup.text) page = page + 1 except: print('似乎报错了呐') else: print('year~')
|