想要在電腦和手機無廣告看Youtube影片?你有「Invidious」這個替代網站可以使用。
Invidious意為無聊、令人討厭之意,這個網站讓Youtube界面變無聊了?其實是最大化精簡了播放功能。
採用Invidious技術的網站,能夠正常搜尋Youtube影片,去廣告,去掉Google追蹤器,還有背景播放、從網頁下載影片、自訂播放清單的功能。
這篇文章,Ivon將會介紹Invidious網站的使用方法,最後討論如何自架一個Invidious站台。
1. Invidious簡介#
其實「Invidious」並不是單一網站,而是一個開源專案的名字。Invidious專案旨在幫助人們建立一個極簡化的Youtube前端網站,單純用於看影片,免受廣告干擾。
原始碼位於Github: Invidious is an alternative front-end to YouTube
Invidious並無使用官方Youtube API,只爬取必要的網頁影片資訊,類似代理伺服器的概念,所以可以繞過「YouTube禁止使用廣告攔截器」的警告訊息。
現在全球有許多使用Invidious技術的站台,只要用電腦或手機瀏覽器連上其中一個站台便能看影片,甚至支援Tor連線呢。
此外,Invidious訂閱列表跟無廣告手機APP NewPipe通用。NewPipe同樣秉持「不依賴Google帳號看Yotube影片」的理念設計。
類似Invidious理念的技術還有 Piped。
缺點是Invidious無法登入Google帳號,適合不依賴Google帳號,只想單純看影片的使用者。有些Invidious站台會開放註冊,那也頂多儲存播放清單和訂閱列表而已。
且如果實例伺服器位於歐美國家,便搜尋不到有區域限制的影片,比方說台灣木棉花代理的動畫。另外有版權保護的音樂影片也容易播放失敗。
所幸因為是開源技術,你也可以自己架一個Invidious站台看影片,這樣你就不用跟其他人搶資源,並對站台資料有完全掌控權。
2. Invidious網站用法#
全球有許多使用Invidious技術的網站,稱為「公共站台」。
如果您不想自架Invidious,請挑個
Invidious公共站台來用,選Health為100的站台(例如較知名的站台https://yewtu.be
),再點選旁邊的Go。
由於Invidious有網頁就能運作,Android和iOS用戶可以點選瀏覽器的「新增網站到主畫面」,將網站捷徑加入到手機桌面。
進入Invidious站台首頁就可以搜尋影片囉
手機即使回到桌面,Invidious仍能在背景繼續播放,Android與iOS皆然
有些Invidious站台開放下載Youtube影片,最高畫質到720p
如果影片無法載入,請點選「切換Invidious站台」換個站台,或者 回報issue給Invidious開發團隊。
有些Invidious站台開放註冊帳號,方便儲存歷史紀錄與儲存播放清單。帳號僅限同一個站台使用,若要搬遷到其他站台需手動匯出資料。
如果您認為網頁不好用,那麼請使用支援Invidious技術的APP:
Android請用 Clipious
iOS請用 Yattee
電腦請用 FreeTube
3. 自架Invidious站台#
不信任Invidious公共站台,當然你也可以自己架一個,擁有更快載入速度,調整更多細部設定。這節討論在Linux電腦以Docker架設Invidious的方法。
有趣的是為強調開源隱私,Invidious官方映像檔是放在RedHat的Quay.io而非Docker Hub。
在Linux電腦安裝 Docker
為防止Invidious被Youtube伺服器擋住,執行youtube-trusted-session-generator容器,取得
po_token
和visitor_data
資料
docker run quay.io/invidious/youtube-trusted-session-generator
- 因為部署需要指令稿初始化,建議複製Invidious官方的儲存庫
git clone https://github.com/iv-org/invidious.git
cd invidious
- 編輯
docker-compose.yml
,將po_token
和visitor_data
填進去,再按需修改。詳細設定檔參考 官方範本。
version: "3"
services:
invidious:
image: quay.io/invidious/invidious:latest
restart: unless-stopped
ports:
- "127.0.0.1:3000:3000" # 預設啟用反向代理,如果是架在自己電腦,去掉127.0.0.1
environment:
INVIDIOUS_CONFIG: |
db:#資料庫密碼
dbname: invidious
user: kemal
password: kemal
host: invidious-db
port: 5432
check_tables: true
signature_server: inv_sig_helper:12999
visitor_data: CHANGE_ME #修改此值
po_token: CHANGE_ME #修改此值
statistics_enabled: true
hmac_key: "" #hmac_key可以用指令openssl rand -hex 20隨機生成
healthcheck:
test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/trending || exit 1
interval: 30s
timeout: 5s
retries: 2
logging:
options:
max-size: "1G"
max-file: "4"
depends_on:
- invidious-db
inv_sig_helper:
image: quay.io/invidious/inv-sig-helper:latest
init: true
command: ["--tcp", "0.0.0.0:12999"]
environment:
- RUST_LOG=info
restart: unless-stopped
cap_drop:
- ALL
read_only: true
security_opt:
- no-new-privileges:true
invidious-db:
image: docker.io/library/postgres:14
restart: unless-stopped
volumes:
- postgresdata:/var/lib/postgresql/data
- ./config/sql:/config/sql
- ./docker/init-invidious-db.sh:/docker-entrypoint-initdb.d/init-invidious-db.sh
environment:
POSTGRES_DB: invidious
POSTGRES_USER: kemal
POSTGRES_PASSWORD: kemal
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"]
volumes:
postgresdata:
- 啟動容器
docker compose up -d
瀏覽器開啟
http://localhost:3000
就可以看Youtube了。要從外部存取請使用通訊埠轉發或是 內網穿透軟體按「趨勢」顯示熱門影片。內容地區可以在右上角設定裡面調整。
點選右上角按照喜好自行設定,「預設聆聽」是指只播放音訊不播放影片。
Invidious內建帳號註冊功能。帳號的功能僅是紀錄觀看歷史和訂閱列表而已,不會讓Google知道使用者的動向。雖說如此,公共Invidious站點的隱私程度仍要自行衡量。
- Indvidious架好後能從網頁端下載影片,不過最高畫質只有720p,其他畫質要手動合併影音檔案。
根據 Invidious官方推薦的APP,瀏覽器安裝擴充元件 Privacy Redirect便能將所有Youtube連結自動導向自架的Invidious站點。
如果你有興趣 自架代理搜尋引擎SearXNG,它也支援將影片搜尋結果導向自己架的Invidious站點。