spencerwooo / substats

( `д′) how many followers do i have? how many!
https://substats.swo.moe
MIT License
813 stars 56 forks source link

B站接口好像突然跪了 #62

Open CuteReimu opened 4 months ago

CuteReimu commented 4 months ago

Describe the bug 现在获取不到B站相关信息了

To Reproduce

$ curl "https://api.swo.moe/stats/bilibili/1415334"
{"source":"bilibili","key":"1415334","failed":true,"message":"request was banned"}

$ curl "https://api.spencerwoo.com/substats/?source=bilibili&queryKey=1415334"
{"status":200,"data":{"totalSubs":0,"subsInEachSource":{"bilibili":0},"failedSources":{"bilibili":"Bilibili user not found"}}}

Expected behavior 原本是可以返回正确信息的

Additional context 之前还是好的,这两天突然就这样了,导致shields.io引用的B站数据全失效了

spencerwooo commented 4 months ago

B 站有其他接口可供使用吗?

CuteReimu commented 4 months ago

这个可以:https://api.bilibili.com/x/web-interface/card?mid=1415334

返回:

{
  "code": 0,
  "message": "0",
  "ttl": 1,
  "data": {
    "card": {
      //...
      "fans": 12345,
      //...
    }
  }
}

api文档:https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/docs/user/info.md#用户名片信息

CuteReimu commented 4 months ago

测了一下,好像不是B站的原因,原接口是好的。

$ curl "https://api.bilibili.com/x/relation/stat?vmid=1415334"
{"code":0,"message":"0","ttl":1,"data":{"mid":1415334,"following":157,"whisper":0,"black":0,"follower":1280}}

也不像是request head少了什么东西导致的,因为我本地npm run dev测试也是好的:

$ curl "http://127.0.0.1:8787/stats/bilibili/1415334"
{"source":"bilibili","key":"1415334","failed":false,"count":1280}

感觉倒像是你那边被B站拦截了。

CuteReimu commented 4 months ago

我就先改成B站原生接口用了。

curl -G 'https://img.shields.io/badge/dynamic/json' \
--data-urlencode 'url=https://api.bilibili.com/x/relation/stat?vmid=1415334' \
--data-urlencode 'query=$.data.follower'

期待大佬解决。

Achuan-2 commented 4 months ago

Clip_2024-05-13_22-12-55 我这边也不行