zhimingshenjun / DD_Monitor

DD监控室第一版
GNU Lesser General Public License v2.1
1.21k stars 102 forks source link

关注列表最多可以获取250个 #93

Closed Jeffz615 closed 3 years ago

Jeffz615 commented 3 years ago
url = f"https://api.bilibili.com:443/x/relation/followings?vmid={vmid}&pn={i}&ps=50&order=desc&jsonp=jsonp"

默认每页20人,但是最多可以50人,参数ps=50即可

Jeffz615 commented 3 years ago
def getFollowings(vmid, count):
    l = []
    burp0_headers = {"Connection": "close", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36 Edg/88.0.705.68", "DNT": "1", "Accept": "*/*", "Sec-Fetch-Site": "same-site",
                     "Sec-Fetch-Mode": "no-cors", "Sec-Fetch-Dest": "script", "Referer": "https://space.bilibili.com/", "Accept-Encoding": "gzip, deflate", "Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6"}
    for i in range(1, min(math.ceil(count/50)+1, 6)):
        burp0_url = f"https://api.bilibili.com:443/x/relation/followings?vmid={vmid}&pn={i}&ps=50&order=desc&jsonp=jsonp"
        response = requests.get(burp0_url, headers=burp0_headers)
        l += response.json().get('data').get('list')
    for i in range(1, min(math.ceil((count-250)/50)+1, 6)):
        burp0_url = f"https://api.bilibili.com:443/x/relation/followings?vmid={vmid}&pn={i}&ps=50&order=asc&jsonp=jsonp"
        response = requests.get(burp0_url, headers=burp0_headers)
        l += response.json().get('data').get('list')
    return l

一共500个,然后去重即可

zhimingshenjun commented 3 years ago

已添加 感谢