Just found a nice website that analyzes the video path and so we could download the videos that are on bilibili.com! As of today when I post this, the webpage ibilibili.com is still alive.
06/05/2017: Something to note. Member-only videos (non public videos) cannot be downloaded right now. Keyword test: 다운로드, 下载, 下載, ダウンロード, descargar, скачать, ดาวน์โหลด
The Ultimate Solution
Hi all, I have been looking for a reliable solution for so long. I've been searching since 2015, and it never really gives a reliable solution. After struggling for a while, here I give you the ultimate solution to run on your PC. Using it as a web service is possible, but it'll be too costly to maintain. Given my financial condition I cannot afford that.
Anyway, the essential steps are simple. As some people are confused about the procedure, let me make this clearer. Don't give up on trying! (08/12/2017)
- Install Python 3 and reboot your computer
- If you use Linux or Mac OS, open up a terminal
- Run the following command:
sudo pip3 install you-get
pip3does not exist, try replacing that with just
- Run the following command:
- If you use Windows, open up the command window as Administrator
- Download the video by:
you-get [Bilibili link]
For more installation guidelines, please visit here.
# to look for video information you-get -di http://www.bilibili.com/video/av854324/ # if the link contains multiple videos, use index_xx.html for individual video you-get -di http://www.bilibili.com/video/av854324/index_65.html
The output looks like
site: Bilibili title: 古风恒久远，良曲永流传【古风合集】 streams: # Available quality and codecs [ DEFAULT ] _________________________________ - format: flv container: flv size: 18.9 MiB (19853917 bytes) # download-with: you-get --format=flv [URL] - format: hdmp4 container: mp4 size: 18.7 MiB (19559025 bytes) # download-with: you-get --format=hdmp4 [URL] - format: mp4 container: mp4 size: 15.1 MiB (15827299 bytes) # download-with: you-get --format=mp4 [URL]
So if you want to download mp4, then run
you-get --format=mp4 http://www.bilibili.com/video/av854324/index_65.html
And a real example from Hiki:
Q & A & Trouble Shooting
Q1: Where did I download my file?
The downloaded video will be located at whichever folder you run you-get. Below is a brief example how to browse folders in terminal.
For Windows: (anything after # means comments)
C:\WINDOWS\System32\> dir # list files in current folder C:\WINDOWS\System32\> D: # change to D disk D:\> cd xxx_folder_name # change to xxx_folder_name D:\xxx_folder_name\> cd .. # change back to upper folder D:\> you-get http://xxxxx
For MacOS (or Linux):
~$ ls # list files in current folder ~$ cd xxx_folder_name # change to xxx_folder_name ~$ cd .. # change back to upper folder ~$ pwd # know current folder path ~$ you-get http://xxxxx
Q2: I'm getting UTF-8 locale issues.
you-get: [error] oops, the current environment does not seem to support Unicode. you-get: please set it to a UTF-8-aware locale first, you-get: so as to save the video (with some Unicode characters) correctly. you-get: you can do it like this: you-get: (Windows) % chcp 65001 you-get: (Linux) $ LC_CTYPE=en_US.UTF-8
Kyo posted this. What you need to do is to run the following as soon as you open the terminal:
- For MacOS or Linux
- For Windows
C:\Windows\System32\cmd.exe /K chcp 65001
Q3: Why there is error downloading through a link?
Recently Bilibili has taken down most of its videos due to pirating issues.
01/15/2018: If you have encountered 403 or 466 error, use the following as a temporary solution:
pip3 install --upgrade https://github.com/ygmpkk/you-get/archive/develop.zip
To convert back later when the merge is approved, go back to the original version via:
pip3 install --upgrade https://github.com/soimort/you-get/archive/master.zip
Note: if you find issues downloading the video, try to update you-get using the following command:
pip3 install --upgrade https://github.com/rosynirvana/you-get/archive/master.zip
Also, this method support many other services like Youku, YouTube, Daily Motion, etc. All supported sites are listed here.
Let me know if you get any questions.
The New Method: BilibiliJJ (06/28/2017)
Another one! While I'm still working on it, here is another one you can try. Like iBilibili, you can add JJ after bilibili and get the download links (warning: many ads, but please don't use Adblocker to support the developer).
For example, if you go to a video page like
You can just add "jj" after "bilibili" like
Then you will see "MP4/MP3下载" for each video (if there are parts, they are in separate blocks). Just click on those, you will be redirected to a page with the downloading link.
Then it is a tricky part. For example you get to the page
Then you need to right click the first blue button that says "迅雷下载". Then you will get a link like:
Use this site to translate that link to a normal url, like shown below:
The first is the Thunder link, and the second is the real link. So the actual video download link would be:
Hope this works for many of you. Let me know.
Method 0: DPlayer's API
06/15/2017: these services are never so stable... Hiki mentioned 403 permission error occurs. Maybe it's time to start my own parser. As of 06/28/2017, we still get 403 errors.
Great news, guys! I find this API link for analyzing bilibli video links and we can definitely use it for video downloading (just like BH-5). It's not as simple as putting an "i" in front of the link, but since iBilibili now requires you to register and login and then download, I believe we should name this method "ZERO" for its current up status.
If you want to get the video to download in
Then just use the link
For the popup comments (I learned from there that it should be called "DanMuKu"), use the link
The only issue is I have not figured out how to find the CID of each video, so we cannot download multiple videos in one link right now. But, hey, this is a great start!
05/16/2017: iBilibili has requested all visitors to register a QQ account and sign in to prevent content leakage to other sites. This is bad because the method is getting more complicated, if you don't have QQ already.. I believe you can go here to register it (in English, thank god...).
The trick is simple. When you go to a video page like
You can just add "i" before "bilibili" like
That is it!
Detailed Instruction for iBilibili (04/22/2016)
Kinda surprised many people love bilibili. In comments people are a little confused on how to download the video. Below is a brief tutorial.
Say you have visited
http://www.ibilibili.com/video/av2555634/ and want to download the video. If there are multiple videos embedded/posted, then it'll show multiple links. For example,
Each row is one video, from left to right these are "click to watch the video", "parse low quality mp4", "download video (video size)", "MP3 download (mp3 size)" (disabled I think), "show QR code to download", "download popup comments".
If there is only one video, it might show the following instead.
From left to right these are "mobile video" (mp4 format), "mobile QR code", "HD video" (flv format, might be broken), "popup comments", "screenshot", and "parse via JiJi" (seems broken and only ads are showing).
Method 2: Bilibili Helper (05/29/2017, segmented video downloader)
So if you are using Chrome, I just find an extension to help download Bilibili videos (segmented videos only). You can click here to install the extension.
I have tried it and certainly this is so far (05/29) THE best alternative to iBilibili. After you install the extension, it'll pop up and ask you to agree to use the helper (green button). There are plenty functionalities, and by default the downloader is enabled. You might need to restart Chrome browser to allow it to work.
To test it, simply go to any bilibili video, and then you will see the following options.
The cat is the helper menu, and from top to bottom they are: video download, popup comment search, popup comment download (XML format or ASS format).
The only downside of this method is that, if you plan to download a movie for example, you will see tens of download links. The movie is segmented into multiple parts and you have to download them piece by piece. But, you know, this is better than nothing (if iBilibili is out of concern).
Method 3: BH-5 (dead as of 06/05/2017)
I have hidden the contents for your benefit. If it is not hidden, it means BH-5 (bilibilih5.club) comes back alive..
NOTE: the webpage now has some parsing issues for different parts. Only the first part can be accessed. Use Method 1 if possible. (11/05/2016) the problem has been fixed as of 11/27/2016, cheers! NOTE2: as of 12/11/2016, BH-5 is down again.. yes, again.. I guess it has to do with bilibili internal changes on its player. The good news is bilibili is using HTML5 as its player now. Maybe we can do something easier just like BH-5. Stay tuned.
Great news! I just found BH-5 is coming alive again (as of 02/28/2017)! Yay! I'm a bit tired in this because it keeps going down and up, back and forth. Currently it's down again (05/07/2017, thanks to Hiki). I will mark this as an unstable site. Because of this, I will work on my own site to download bilibili videos (as one of my personal projects in summer).
People were having some issues downloading videos using
ibilibili.com. Here I find another nice website that is essentially a html5 version of bilibili. Why that's good? Because you can directly right click on the video and do "Save as..."
The website is
http://www.shiroblue.cn/ or http://bilibilih5.club/ (same site, different domain names) (obviously the web owner has permanently switched to the new domain name).
Either you copy the name of the video and search for it, or do the following.
Suppose (@moon) had http://www.bilibili.com/video/av5047810 but it fails on the iBilibili method. Using the last few digits, we convert the link into:
Now first click the video to play, and wait for the video playing, then right click on the video, we see "Save video as..." is there waiting for you.
It would also work if you replace "http://www.shiroblue.cn/" with "http://bilibilih5.club/".
Sometimes the video stuck after we click it to play, and "Save as" might not work as expected.
A solution I can think of is to refresh the page, choose a different source (like "backup:1" if there is one), and then try again. This method has been deprecated since the website player no longer provides "source" option. If this does not work, post link here and I'll try to help you.
03/12/2017 update about "popup comments". In case you wonder about how to download popup comments in BH-5, I can tell you there is a not-so-simple way. BH-5 gives the option to display the comments, which allow us to download the popup comments. But it needs some efforts. Detailed step below.
- Assume you find BH-5 link: http://bilibilih5.club/#/view/9068328 and you are using Chrome browser.
- Turn on the "Developer Tool" in Chrome as shown below:
- Click the "network" tab, and go to the BH-5 link (or refresh the page if you are already there). Then you will see the following xml file (must be some numbers)
- Congratulations, you have found the popup comments!
Method 4: FLVCD or other online video downloader
As many people from the comments suggested, it seems online video downloader is the best option so far. Here are a recommended list coming from the comments. Feel free to comment and add more.
- http://www.flvcd.com (recommended by Lisa)
- http://www.tubeoffline.com/download-BiliBili-videos.php (recommended by Jenny)
Just be aware there might be ads.
About Downloading Member-Only Videos at Bilibili
Some videos are member-only and currently there are no good ways to bypass that and download them. To view the videos, you have to become a member, answering 20-ish questions correctly. They are all in Chinese so you need to know a bit about the language. You cannot copy the words directly since they are embedded in the image. To answer the questions, if you can type in Chinese/Japanese, you can go to https://www.zhengjie.com/ to find answers as suggested by
findaaaiba. Or you could purchase bilibili account through taobao.
Re-Organized again 🙂 (
10/30/2016 05/29/2017 07/15/2017)
Re-organized contents. Since BH-5 is dead for now, I moved it to later parts of the article. Also thank "kimo" for providing an alternative method, but it seems
vdYoutube.com failed on me.
As the ultimate solution is presented, I will no longer implement my own solution. This solution is on GitHub and is well maintained by many people. If ever the service is down, it can be quickly fixed, either by the developers, or by me. Thank you all for being with me for 2 years. 🙂