터미널에서 직접 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
./wcofun
또는 ./wocfun search query here
모든 에피소드를 다운로드하려면: ./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 핸드셰이크가 브라우저의 핸드셰이크와 동일하지 않기 때문에 발생합니다. 이에 대한 몇 가지 해결 방법은 다음과 같습니다.
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를 사용하는 경우 이것이 cloudflare에 의해 감지되는 최신 버전의 openssl 때문이라는 것을 알게 되었습니다. 우분투 시스템이나 여기에서 우분투의 20.04 libssl.so.1.1
얻을 수 있습니다. 여기에서 라이브러리를 추출하고 그에 따라 LD_LIBRARY_PATH
설정하여 wcofun을 시작합니다.
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
또는 ~/.wcofunrc
에 export LD_LIBRARY_PATH=~/curlibs
추가할 수 있습니다.
Firefox 또는 Chrome을 선택하여 Readme에 설명된 대로 이 프로젝트를 빌드하고, 빌드된 컬 실행 파일을 시스템 어딘가에 복사하고 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
이제 ~/.wcofunrc
에 CURL_PATH="/some/important/path/curl-impersonate"
설정하세요.
아치 리눅스에서는 다음을 사용하여 쉽게 설치할 수 있습니다.
yay -S curl-impersonate-bin
그리고 ~/.wcofunrc
에 CURL_PATH="/usr/local/bin/curl-impersonate-chrome"
설정하십시오.