需求
前段時間面試,被問到設計模式,說實話雖然了解面向物件、多型,但突然被問到設計模式,還要說清解決什么問題,自己是有些懵的,畢竟實習主要作業是在原專案基礎進行CRUD,自己還是沒有深度思考,所以只能簡單介紹自己知道的簡單工廠模式等,趁著回家這段假期,充電學習一下Go設計模式!
學習資料
B站搜索一下,突然發現劉丹冰老師更新了設計模式課程,因為前面學習Go基礎也是通過書籍和劉丹冰老師的視頻學習,
設計模式鏈接如下:
- https://www.bilibili.com/video/BV1Eg411m7rV
由于家里網路和個人學習習慣,喜歡把視頻下載下來學習,會更專注下來,
上次下載忘了寫博客,這次專門記錄一下,方便下次操作,
問題
you-get是下載利器,然而bilibili的合集下載會有些問題,具體原因沒有仔細分析,個人懷疑是獲取不了合集下的所有視頻鏈接,所以本文通過八爪魚進行獲取視頻鏈接,再通過python寫腳本,you-get下載全部視頻,
工具準備
個人是Mac電腦,具體軟體或環境:
- 八爪魚軟體
- Python 3.8.9, 安裝pandas包
- you-get
(以上環境都是以往安裝的,網上也有不錯的安裝教程,這里就不贅述了,)
下載步驟
1. 八爪魚將合集視屏的鏈接收集起來并下載

軟體操作比較簡單,主要步驟:
- 建立新任務,即添加鏈接,點擊開始采集
- 根據網頁分析結果進行采集和保存
- 匯出采集的視頻鏈接資料為excel

2. 對合集中所有視頻鏈接進行讀取和you-get下載
excel命名為bilibili.xlsx
下面是簡單的腳本下載
#-- coding: utf-8 --
# 下載bilibili合集視屏
# 首先八爪魚爬取網頁所有視頻地址,保存到excel
# 然后python讀取excel檔案,到字典中
# 最后回圈便利,使用you-get下載
import pandas as pd
import os
def readExcel(file):
df = pd.read_excel(file, sheet_name = "Sheet1") # sheet_name不指定時默認回傳全表資料
return df["title"] # 回傳表格中title列,此列存放視頻的地址
def download(address): # 下載
print(address) # 測驗
for i in address:
print("-------")
os.system("you-get -o ./bilibili "+ str(i)) # -o后面是保存路徑,根據個人需求更改
if __name__ == "__main__":
file_path = r"./bilibili.xlsx"
videos = readExcel(file_path)
download(videos)
總結
解決方案比較簡單,也沒考慮太多的優化,暫時夠用,若有更好改進,歡迎評論和指出!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/510890.html
標籤:其他
