-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[bilibili] initial support (#2824) #6443
Conversation
To consider:
|
Isn't that a video-only site? Or at least used to be? |
I am not that much familiar with the Chinese internet to be honest. I think it was, but now it has an article section. Compare to how YouTube has a "Community" tab. I think gallery-dl can integrate with yt-dlp for videos too, but, as I said, I am personally interested only in bilibili space articles, so I'll let Cunningham's Law handle other contributions types if needed. |
I'm not familiar either, but let me just dump this from yt-dlp's
|
Thanks, was not aware of those. In any case, |
Do you want me to do a proper code review, or would it be OK if I did any changes and additions myself? |
Please go ahead with your changes. The branch should be open for maintainers. |
When rate-limited, request for article fails:
What I do for now is retry if response enforces logging in. def article(self, article_id):
url = "https://www.bilibili.com/opus/" + article_id
while True:
response = self.extractor.request(url)
if "window._riskdata_" in response.text:
self.extractor.wait(seconds=300)
continue
return util.json_loads(text.extr(
response.text, "window.__INITIAL_STATE__=", "};") + "}") Would be cool to properly figure this out. |
- set 3-6 second request_interval by default - retry request after waiting 5 minutes
No description provided.