1.背景
今天想在B站上下载一套教程,奈何人比较菜不会用爬虫,就想着用第三方的’唧唧’来下载。可惜唧唧的下载速度太慢了,大概只有150kb/s,就想着先通过手机下载,再把文件转移到电脑上。(硕鼠没用过,不知道速度如何)
2. 实现过程
一. 下载文件至手机
手机下载视频应该是不限速的,下载速度非常快,基本有4-5mb/s,20G的视频也很快下好了,不过记得给手机留出足够的空间
二. 找到手机中的文件
对于安卓手机,如果没有自行设置储存位置的话,B站下载的视频会放在【所有文件】-- 【Android】 – 【data】 – 【tv.danmaku.bili】-- 【download】下
在手机上进入文件,会发现三个文件夹(这是因为我刚刚下载了三个分P)
选择任一文件夹进入,里面的三个子文件夹
‘64’存放视频音频文件
danmaku.xml存放弹幕信息
‘entry.json’存放了该视频的基本信息(标题,分P等信息都在这里面)
进入’64‘文件,我们发现视频被分成了音频文件’autio.m4s‘和视频文件’video.m4s’。我们需要先将他们改成’.mp4’格式再合并成一个MP4文件。
三. 把文件转移至电脑
然而,当连接手机后,发现在电脑中打开’download‘文件夹是空的,根本不存在我们下载的视频。
我猜测应该是这个’download‘文件夹存在特殊之处,所以我们需要在手机上将视频文件转移到其他地方。
将文件复制到\Android\data\tv.danmaku.bili\94680592后,我们就可以复制或者剪切这些文件到电脑上了。
四. 组合音频文件和视频文件
如果视频分P较少,可以手动将两个’.m4s’文件改为’.mp4’文件,再使用格式工厂将二者组合。
因为我需要下载100P,会有100个c_开头的文件,一个个改不切实际,就写了个python小脚本来实现自己更改文件后缀和合并音、视频。
# -*- coding:utf-8 -*-
import os