Смотрите видео с wcofun.com прямо со своего терминала. Вы можете искать, транслировать и загружать видео или плейлисты. Вы также можете продолжить с того эпизода, из которого вы остались.
Просто загрузите скрипт wcofun, установите перечисленные ниже зависимости и запустите его.
wget https://raw.githubusercontent.com/matheusfillipe/wcofun.cli/master/wcofun
chmod +x wcofun
./wcofun
sudo apt install coreutils jq fzf rofi mpv -y
К сожалению, вам все равно понадобится htmlq, который можно установить вместе с грузом:
cargo install htmlq
Или скачайте со страницы их релизов и поместите на свой путь:
# Notice this might not be the earliest version!
wget https://github.com/mgdm/htmlq/releases/download/v0.4.0/htmlq-x86_64-linux.tar.gz
tar -xvzf htmlq-x86_64-linux.tar.gz
sudo cp htmlq /usr/bin/ # or anywhere in your path
Вы можете установить из AUR: https://aur.archlinux.org/packages/wcofun.
yay -S wcofun
Или, если вы загрузите скрипт, вы можете получить зависимости с помощью:
yay -S coreutils mpv htmlq jq fzf rofi # htmlq is on the AUR
Чтобы избежать проблем «Не найдено»:
yay -S curl-impersonate-chrome
brew install coreutils htmlq jq fzf mpv
./wocfun search query here
./wcofun
или ./wocfun здесь. Если вы хотите скачать все серии: ./wcofun -d Search query here
WCOFUN.CLI
---------------------------------------------------------------------------------
Syntax:
/home/matheus/Projects/wcofun/wcofun [-n] [-s | -D | -d [range]] [search query]
All parameters are optional.
Example:
Search and stream or download one episode: wcofun [search query]
Download all episodes: wcofun -D [search query]
Watch next episode: wcofun -n
Options:
-D: Download all episodes of selected anime.
-d [ep-number|start-end]: Download a range of episodes by specifying the beginning and end. You can also specify a single episode number or a range like n- to download all starting from the nth or -n to download all until the nth. An empty range (-) will cause cause it to prompt for the episode number and then download.
-s: Stream selectped episode
-n: Play next episode of lastly watched anime
-p: Play previous episode of lastly watched anime
-P [command]: Pre execution command. Useful for launching an http proxy.
-e: Edit config with nvim
-c: Edit cached searches with nvim
-h: Show this help
По умолчанию он будет использовать fzf из терминала и rofi, если вывод терминала недоступен. У вас может быть файл конфигурации ~/.wcofunrc
, куда вы можете экспортировать некоторые соответствующие переменные:
# MENU_CMD: Choose your menu command. Tested with dmenu, fzf and rofi only
# NOTIFY_CMD. How to tell you about the status. Leave empty for a simple echo to stdout
export MENU_CMD= " fzf "
export MENU_CMD= " rofi -dmenu -i "
# MENU_CMD="dmenu"
export NOTIFY_CMD= " notify-send WCOFUN "
# User agent. Maybe you have problems so try changing this.
export UA= " User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0 "
# Maybe you want to use a proxy? (Helps when getting blocked by cloudflare, or if you want to debug)
export CURL_EXTRA_PARAMS= " " # this option is not used for stream and download
# CURL_EXTRA_PARAMS="-k --tlsv1 -x http://localhost:8080"
export PRE_COMMAND= " "
# PRE_COMMAND="mitmdump 2>&1 /dev/null"
Если вы не получаете результатов по всем вопросам, возможно, вас блокирует Cloudflare. Эта проблема возникает из-за того, что рукопожатие tls в Curl не совпадает с подтверждением в браузере. Вот несколько решений для этого:
Установите прокси, например mitmproxy
: pacman -S mitmproxy
или brew install mitmproxy
и создайте конфигурацию типа:
export CURL_EXTRA_PARAMS= " -k --tlsv1 -x http://localhost:8080 "
export PRE_COMMAND= " mitmdump 2>&1 /dev/null "
Это запустит прокси-сервер локально до начала поиска wcofun.
Если вы используете Linux, я обнаружил, что это связано с более новой версией openssl, которая каким-то образом обнаруживается Cloudflare. Вы можете получить libssl.so.1.1
для Ubuntu 20.04 с компьютера с Ubuntu или отсюда. Извлеките из него библиотеку и запустите wcofun с соответствующим параметром LD_LIBRARY_PATH
.
mkdir libssl
cd libssl
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
ar xar x libssl1.1_1.1.1f-1ubuntu2_amd64.deb
tar xf data.tar.xz
mkdir -p ~ /curlibs
cp usr/lib/x86_64-linux-gnu/libssl.so.1.1 ~ /curlibs
cd ..
rm -r libssl
# And finally run it like:
LD_LIBRARY_PATH= ~ /curlibs wcofun
Или вы можете добавить export LD_LIBRARY_PATH=~/curlibs
в свой ~/.wcofunrc
.
Создайте этот проект, как описано в файле readme, выбрав Firefox или Chrome, скопируйте встроенный исполняемый файл Curl куда-нибудь в вашей системе и установите для него CURL_PATH
.
git clone --depth=1 https://github.com/lwthiker/curl-impersonate
cd curl-impersonate
docker build -t curl-impersonate-chrome chrome/
# Wait for a while and let's check it out
docker run -it curl-impersonate-chrome /bin/bash
ls /build/out
Если вы видите curl-impersonate curl_chrome98
означает, что это сработало. Пока не закрывайте оболочку контейнера.
из другого типа терминала:
docker cp curl-impersonate-chrome:/build/out/curl-impersonate /some/important/path/curl-impersonate
Теперь просто установите CURL_PATH="/some/important/path/curl-impersonate"
в вашем ~/.wcofunrc
В Arch Linux вы можете легко установить его с помощью:
yay -S curl-impersonate-bin
И установите CURL_PATH="/usr/local/bin/curl-impersonate-chrome"
в вашем ~/.wcofunrc