blob: e660281cc6c6e61f9f9c678d163ea11c9c1eb944 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
from ATRI.utils import request
from ATRI.exceptions import RequestError
class API:
def __init__(self, uid: int):
self.uid = uid
async def _request(self, url: str, params: dict = dict()) -> dict:
headers = {
"User-Agent": "Mozilla/5.0",
}
try:
resp = await request.get(url, params=params, headers=headers)
except Exception:
raise RequestError("Request failed!")
return resp.json()
async def get_user_info(self) -> dict:
url = "https://api.bilibili.com/x/space/acc/info"
params = {"mid": self.uid}
return await self._request(url, params)
async def get_user_dynamics(
self, offset: int = int(), need_top: bool = False
) -> dict:
url = "https://api.vc.bilibili.com/dynamic_svr/v1/dynamic_svr/space_history"
params = {
"host_uid": self.uid,
"offset_dynamic_id": offset,
"need_top": 1 if need_top else 0,
}
return await self._request(url, params)
|