|
|
@ -7,6 +7,7 @@ use App\BilibiliCollections; |
|
|
use App\BilibiliUpVideos; |
|
|
use App\BilibiliUpVideos; |
|
|
use App\BilibiliVideoParts; |
|
|
use App\BilibiliVideoParts; |
|
|
use App\BilibiliVideos; |
|
|
use App\BilibiliVideos; |
|
|
|
|
|
use Exception; |
|
|
use GuzzleHttp\Client; |
|
|
use GuzzleHttp\Client; |
|
|
use Illuminate\Support\Arr; |
|
|
use Illuminate\Support\Arr; |
|
|
use Illuminate\Support\Facades\DB; |
|
|
use Illuminate\Support\Facades\DB; |
|
|
@ -43,7 +44,7 @@ class BilibiliServiceV2 |
|
|
/** |
|
|
/** |
|
|
* 获取各个 up 主的视频 id |
|
|
* 获取各个 up 主的视频 id |
|
|
* @param int $mediaId |
|
|
* @param int $mediaId |
|
|
* @throws \Exception |
|
|
|
|
|
|
|
|
* @throws Exception |
|
|
*/ |
|
|
*/ |
|
|
public function queryUpVideoList($mediaId = 320491072) |
|
|
public function queryUpVideoList($mediaId = 320491072) |
|
|
{ |
|
|
{ |
|
|
@ -147,7 +148,7 @@ class BilibiliServiceV2 |
|
|
/** |
|
|
/** |
|
|
* 手动执行查询 |
|
|
* 手动执行查询 |
|
|
* @param int $mediaId |
|
|
* @param int $mediaId |
|
|
* @throws \Exception |
|
|
|
|
|
|
|
|
* @throws Exception |
|
|
*/ |
|
|
*/ |
|
|
public function queryLocalUpVideoList($mediaId = 320491072) |
|
|
public function queryLocalUpVideoList($mediaId = 320491072) |
|
|
{ |
|
|
{ |
|
|
@ -261,17 +262,20 @@ class BilibiliServiceV2 |
|
|
$videoPartsMap[$vItem["aid"]] = $vItem["total_parts"]; |
|
|
$videoPartsMap[$vItem["aid"]] = $vItem["total_parts"]; |
|
|
echo "当前 up名称是: " . $item["up_name"] . " 当前下载的视频 title: " . $vItem["title"] . " 当前下载的视频 aid 是:" . $vItem["aid"] . "\n" ; |
|
|
echo "当前 up名称是: " . $item["up_name"] . " 当前下载的视频 title: " . $vItem["title"] . " 当前下载的视频 aid 是:" . $vItem["aid"] . "\n" ; |
|
|
Log::info("当前 up名称是: " . $item["up_name"] . " 当前下载的视频 title: " . $vItem["title"] . " 当前下载的视频 aid 是:" . $vItem["aid"]); |
|
|
Log::info("当前 up名称是: " . $item["up_name"] . " 当前下载的视频 title: " . $vItem["title"] . " 当前下载的视频 aid 是:" . $vItem["aid"]); |
|
|
|
|
|
$result = false; |
|
|
if ($item['mid'] == 27174777) { |
|
|
if ($item['mid'] == 27174777) { |
|
|
$this->partDownloadBSitePlaylist($videoPartsMap, "/Volumes/WD/tmp/bilibili/", "女团"); |
|
|
|
|
|
|
|
|
$result = $this->partDownloadBSitePlaylist($videoPartsMap, "/Volumes/WD/tmp/bilibili/", "女团"); |
|
|
} else if ($item["mid"] == 391316322) { |
|
|
} else if ($item["mid"] == 391316322) { |
|
|
$this->partDownloadBSitePlaylist($videoPartsMap, "/Volumes/WD/tmp/bilibili/", "娜娜"); |
|
|
|
|
|
|
|
|
$result = $this->partDownloadBSitePlaylist($videoPartsMap, "/Volumes/WD/tmp/bilibili/", "娜娜"); |
|
|
} else if ($item["mid"] == 396501206) { |
|
|
} else if ($item["mid"] == 396501206) { |
|
|
$this->partDownloadBSitePlaylist($videoPartsMap, "/Volumes/WD/tmp/bilibili/", "佳佳"); |
|
|
|
|
|
|
|
|
$result = $this->partDownloadBSitePlaylist($videoPartsMap, "/Volumes/WD/tmp/bilibili/", "佳佳"); |
|
|
} else { |
|
|
} else { |
|
|
$this->partDownloadBSitePlaylist($videoPartsMap, $this->baseDir . "bilibili/", $item['up_name']); |
|
|
|
|
|
|
|
|
$result = $this->partDownloadBSitePlaylist($videoPartsMap, $this->baseDir . "bilibili/", $item['up_name']); |
|
|
|
|
|
} |
|
|
|
|
|
if ($result) { |
|
|
|
|
|
$vItem["is_downloaded"] = 1; |
|
|
|
|
|
$vItem->save(); |
|
|
} |
|
|
} |
|
|
$vItem["is_downloaded"] = 1; |
|
|
|
|
|
$vItem->save(); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
@ -618,7 +622,7 @@ class BilibiliServiceV2 |
|
|
} |
|
|
} |
|
|
try { |
|
|
try { |
|
|
usleep(random_int(10, 100) * 1000); |
|
|
usleep(random_int(10, 100) * 1000); |
|
|
} catch (\Exception $e) { |
|
|
|
|
|
|
|
|
} catch (Exception $e) { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
break; |
|
|
break; |
|
|
@ -626,7 +630,7 @@ class BilibiliServiceV2 |
|
|
$list = BilibiliVideos::simplePaginate(50, null, 'page', $i); |
|
|
$list = BilibiliVideos::simplePaginate(50, null, 'page', $i); |
|
|
try { |
|
|
try { |
|
|
usleep(random_int(10, 1000) * 1000); |
|
|
usleep(random_int(10, 1000) * 1000); |
|
|
} catch (\Exception $e) { |
|
|
|
|
|
|
|
|
} catch (Exception $e) { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@ -849,7 +853,7 @@ class BilibiliServiceV2 |
|
|
Log::info("current download result: " . $downloadResult); |
|
|
Log::info("current download result: " . $downloadResult); |
|
|
try { |
|
|
try { |
|
|
usleep(random_int(1000, 10000) * 1000); |
|
|
usleep(random_int(1000, 10000) * 1000); |
|
|
} catch (\Exception $e) { |
|
|
|
|
|
|
|
|
} catch (Exception $e) { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
@ -880,12 +884,17 @@ class BilibiliServiceV2 |
|
|
for i in $(seq 1 ' . $parts . ') |
|
|
for i in $(seq 1 ' . $parts . ') |
|
|
do |
|
|
do |
|
|
annie -f 64 $url$i |
|
|
annie -f 64 $url$i |
|
|
done ' ); |
|
|
|
|
|
|
|
|
done && echo "ok"' ); |
|
|
Log::info($downloadResult); |
|
|
Log::info($downloadResult); |
|
|
Log::info("current download result: " . $downloadResult); |
|
|
|
|
|
|
|
|
Log::info("$aid current download result: " . $downloadResult); |
|
|
try { |
|
|
try { |
|
|
usleep(random_int(1000, 10000) * 1000); |
|
|
usleep(random_int(1000, 10000) * 1000); |
|
|
} catch (\Exception $e) { |
|
|
|
|
|
|
|
|
} catch (Exception $e) { |
|
|
|
|
|
} |
|
|
|
|
|
if (trim($downloadResult) == 'ok') { |
|
|
|
|
|
return true; |
|
|
|
|
|
} else { |
|
|
|
|
|
return false; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|