python爬取b站指定用户信息
·
import requests
def search_user(keyword):
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36',
'Referer': 'https://www.bilibili.com/',
'Cookie': 'YOUR_COOKIE_HERE' # 请替换为有效的Cookie
}
params = {
'keyword': keyword,
'search_type': 'bili_user', # 指定搜索类型为用户
'page': 1
}
url = 'https://api.bilibili.com/x/web-interface/search/type'
try:
response = requests.get(url, headers=headers, params=params)
response.raise_for_status()
data = response.json()
print("API响应:", data) # 调试输出
# 检查API返回状态码
if data.get('code') != 0:
print(f"搜索失败:{data.get('message')}")
return None
result_data = data.get('data', {})
if not result_data.get('result'):
print("未找到相关用户")
return None
# 获取用户列表并提取第一个用户的mid
user_list = result_data.get('result', [])
if not user_list:
print("搜索结果为空")
return None
first_user = user_list[0]
uid = first_user.get('mid')
if not uid:
print("用户ID字段缺失")
return None
print(f"找到用户:{first_user.get('uname')},UID:{uid}")
return uid
except requests.exceptions.RequestException as e:
print(f"请求失败:{str(e)}")
return None
def get_user_info(uid):
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36',
'Referer': f'https://space.bilibili.com/{uid}/',
'Cookie': 'YOUR_COOKIE_HERE' # 请替换为有效的Cookie
}
params = {'mid': uid}
url = 'https://api.bilibili.com/x/space/acc/info'
try:
response = requests.get(url, headers=headers, params=params)
response.raise_for_status()
data = response.json()
print("用户信息响应:", data) # 调试输出
if data.get('code') != 0:
print(f"获取信息失败:{data.get('message')}")
return
user_data = data.get('data', {})
print(f"用户昵称:{user_data.get('name')}")
print(f"关注数:{user_data.get('following')}")
print(f"粉丝数:{user_data.get('follower')}")
except requests.exceptions.RequestException as e:
print(f"请求失败:{str(e)}")
def main():
keyword = input("请输入要搜索的用户关键词:")
if uid := search_user(keyword):
get_user_info(uid)
if __name__ == "__main__":
main()
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)