4
3
Fork
You've already forked PipePipeExtractor
3

BiliBili: fix user space videos Client API & add new user space videos Search API #17

Merged
NullPointerException merged 10 commits from chr_56/PipePipeExtractor:bilibili-channel-extractor-fix into main 2025年10月12日 14:32:47 +02:00
Contributor
Copy link

I understand that PipePipe 5 is coming soon, and this repo would be deprecated.

However, until the stable PipePipe 5 is released, which appears to be quite some time away, maintaining legacy version may be unavoidable.

So here is a bug(s) fix for maintenance.

In this PR:

  • Fix a defect in requestUserSpaceResponse(), causing infinite trying instead of switching API when meeting a unknown error code;
  • Fix user space videos (BiliBili channel videos) Client API returning -4001 , since it requires AppSign2 query parameter signature validation now;
  • Add user space videos Search API3 , which has less rick controls;
  • Clean up code.
<h3><b>I understand that PipePipe 5 is coming soon, and this repo would be deprecated. </b></h3> However, until the stable PipePipe 5 is released, which appears to be _quite some time away_, **maintaining legacy version _may_ be unavoidable**. So here is a bug(s) fix for **maintenance**. In this PR: - Fix a defect in `requestUserSpaceResponse()`, causing **infinite trying** instead of switching API when meeting a unknown error code; - Fix user space videos (BiliBili channel videos) **Client API** returning -400[^issue], since it requires AppSign[^as] query parameter signature validation now; - Add user space videos **Search API**[^sapi], which has less rick controls; - Clean up code. [^issue]: See [bilibili-API-collect#1410](https://github.com/SocialSisterYi/bilibili-API-collect/issues/1410) [^as]: See document [AppSign](https://github.com/SocialSisterYi/bilibili-API-collect/blob/60a0c5d1a2f44fe61335da04571305fa7727a968/docs/misc/sign/APP.md) [^sapi]: See document [SearchAPI](https://github.com/SocialSisterYi/bilibili-API-collect/blob/60a0c5d1a2f44fe61335da04571305fa7727a968/docs/video/collection.md#%E6%A0%B9%E6%8D%AE%E5%85%B3%E9%94%AE%E8%AF%8D%E6%9F%A5%E6%89%BE%E8%A7%86%E9%A2%91)

Yeah you are right, my plan is to still maintain the legacy version for about 6 months - the main reason is the minSdk is raise from 21 to 26.

Yeah you are right, my plan is to still maintain the legacy version for about 6 months - the main reason is the minSdk is raise from 21 to 26.
Author
Contributor
Copy link

Thanks. I would consider to migrate it to new Extractor. (it looks that channel-related development is in very early stage now, in alpha2.)

Thanks. I would consider to migrate it to new Extractor. (it looks that channel-related development is in very early stage now, in alpha2.)
chr_56 deleted branch bilibili-channel-extractor-fix 2025年10月12日 15:05:39 +02:00

Thanks. I would consider to migrate it to new Extractor. (it looks that channel-related development is in very early stage now, in alpha2.)

not really - in my test the extraction is already stable enough, haven't met any failure during the last week. The only issue is only video tab is done for now.

If we still need API flipping, we would need to cache the state in response.

> Thanks. I would consider to migrate it to new Extractor. (it looks that channel-related development is in very early stage now, in alpha2.) not really - in my test the extraction is already stable enough, haven't met any failure during the last week. The only issue is only video tab is done for now. If we still need API flipping, we would need to cache the state in response.
Author
Contributor
Copy link
  1. I am kind of busy recently; I didn't dig deep into source code.
  2. Rick Control failures are more likely to be relative with your Internet environment especially when you are logged out, basing on my experience; In BiliBili Web (PC, logged out e.g. in browser private mode), you may even meet Rick Controls - you need pass a Captcha to proceed, this is a phenomenon of Rick Controls.
  3. For planning/implementation of API flipping, I may be free in lately November or December to get started. Thank you.
1. I am kind of **busy recently**; I didn't dig deep into source code. 2. Rick Control failures are more likely to be relative with **your Internet environment** especially when you are **logged out**, basing on my experience; In BiliBili Web (PC, logged out e.g. in browser private mode), you may even meet Rick Controls - you need pass a Captcha to proceed, this is a phenomenon of Rick Controls. 3. For planning/implementation of API flipping, I may be free **in lately November or December** to get started. Thank you.

Thanks for the update. For now, since the extraction seems stable in my tests from several different IPs, I think it's fine to leave it as-is. We can revisit it once we really run into issues - no rush.

Thanks for the update. For now, since the extraction seems stable in my tests from several different IPs, I think it's fine to leave it as-is. We can revisit it once we really run into issues - no rush.

I finally found you are right. It's much better to develop 5.0 in a new repo and release it as a new app.

It's now https://github.com/InfinityLoop1308/PipePipe-X . 1.0 just released.

Classic version will still be maintained.

I finally found you are right. It's much better to develop 5.0 in a new repo and release it as a new app. It's now https://github.com/InfinityLoop1308/PipePipe-X . 1.0 just released. Classic version will still be maintained.
Sign in to join this conversation.
No reviewers
Labels
Clear labels
No items
No labels
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
NullPointerException/PipePipeExtractor!17
Reference in a new issue
NullPointerException/PipePipeExtractor
No description provided.
Delete branch "chr_56/PipePipeExtractor:bilibili-channel-extractor-fix"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?