[L] [W] [LW] означают, что скрипт работает в операционных системах Linux, Windows и в обеих ОС соответственно.
Пользователи Windows могут запускать скрипт в среде Babun (https://github.com/babun/babun)
[L] - leetcode_problems.py - скачивает задачи по алгоритмам с Leetcode
[L] - xiami.py - позволяет скачивать или воспроизводить музыку высокого качества с xiami.com
[L] - pan.baidu.com.py - предоставляет функции скачивания, офлайн-скачивания, загрузки, воспроизведения, пересылки, работы с файлами на облачном сервисе Baidu
[L] - bt.py - выполняет взаимное преобразование magnet torrent и фильтрацию чувствительных слов
[L] - 115.py - обеспечивает скачивание и воспроизведение с 115网盘
[L] - yunpan.360.cn.py - осуществляет скачивание с 360网盘
[L] - music.baidu.com.py - даёт возможность скачивать или воспроизводить музыку высокого качества с music.baidu.com
[L] - music.163.com.py - предлагает скачивать или слушать музыку высокого качества с сайта music.163.com
[L] - flv_cmd.py - представляет собой клиент для онлайн-сервиса видеоаналитики, поддерживает скачивание и прослушивание
[L] - tumblr.py - загружает все изображения, видео и аудио с определённого tumblr.com
[L] - unzip.py - решает проблему с искажением символов при распаковке файлов в Linux
[L] - ed2k_search.py - основан на donkey4u.com и выполняет поиск emule
[L] - 91porn.py - позволяет скачать или прослушать 91porn
[L] - ThunderLixianExporter.user.js - форк проекта https://github.com/binux/ThunderLixianExporter, который добавляет поддержку экспорта в mpv и mplayer.
python2-requests (https://github.com/kennethreitz/requests)
python2-lxml
--index сортирует по индексу
--level сортирует по уровню сложности
--tag сортирует по тегу
--title сортирует по названию
--rm_blank удаляет пустые строки из задач
--line LINE устанавливает количество пустых строк между задачами
-r, --redownload повторно скачивает данные
Данные сохраняются в ./leecode_problems.pk, преобразованный текст — в './leecode problems.txt'
wget
python2-requests (https://github.com/kennethreitz/requests)
python2-mutagen (https://code.google.com/p/mutagen/)
mpv (http://mpv.io)
xiami.py — это клиент командной строки (CLI) для Xiami Music. Предоставляет функции входа в систему, скачивания, прослушивания и добавления в избранное.
Поддерживает анализ данных с Luoo.net
Для первого использования необходимо войти в систему с помощью команды xm login (используя оригинальный аккаунт Xiami).
Также поддерживается вход с использованием учётной записи Taobao
Для учётных записей Taobao после входа сохраняются только файлы cookie, связанные с Xiami, а файлы cookie Taobao удаляются.
Вход с учётными данными Taobao защищён шифрованием, которое невозможно взломать. Необходимо вручную добавлять файлы cookie (см. раздел «Добавление файлов cookie вручную» ниже).
VIP-пользователи получают доступ к музыке высокого качества для скачивания и прослушивания.
Если у вас есть VIP-аккаунт на Xiami, но вы не можете получить доступ к музыке высокого качества, рекомендуется использовать связанную учётную запись Taobao для входа.
Скачанные файлы MP3 по умолчанию содержат теги ID3, которые сохраняются в текущем каталоге.
Файлы cookie хранятся в ~/.Xiami.cookies.
Что касается воспроизведения:
В терминале, где запущен скрипт, нажмите Enter один раз, чтобы остановить текущее воспроизведение и перейти к следующему файлу. Дважды нажмите Enter, чтобы остановить воспроизведение текущего файла и выйти.
# Вход в Xiami
g
login
login username
login username password
signout # Выход из системы
d или download url1 url2 # Скачивание
p или play url1 url2 # Прослушивание
s или save url1 url2 # Добавление в избранное
-p, --play Воспроизводит файлы в порядке очереди
-pp Воспроизводит песни в порядке убывания количества прослушиваний
-l, --low Скачивает музыку низкого качества
-d, --undescription Не добавляет описание диска
-f num, --from_ num Начинает воспроизведение с num-го файла
-t TAGS, --tags TAGS Добавляет теги для избранного, разделяя их запятыми, например: -t piano,cello,guitar
-n, --undownload Запрещает скачивание, используется для изменения существующих тегов ID3
xm — псевдоним для запуска xiami.py ('python2 /path/to/xiami.py')
# Войти в систему
xm g
xm login
xm login username
xm login username password
# Добавить файлы cookie вручную
1. Войдите в систему через браузер, затем нажмите F12, перейдите на страницу http://xiami.com/vip
2. Выберите «Сеть» или network, найдите xiami.com/vip, среди параметров найдите Cookie: memthod_auth=value
3. Скопируйте значение value и вставьте его в команду xm g value, затем выполните её.
# Выйти из системы
xm signout
# Скачать альбом
xm d http://www.xiami.com/album/168709?spm=a1z1s.6928801.1561534521.114.ShN6mD
# Скачать песню
xm d http://www.xiami.com/song/2082998?spm=a1z1s.6659513.0.0.DT2j7T
# Скачать подборку лучших песен исполнителя
xm d http://www.xiami.com/song/showcollect/id/30374035?spm=a1z1s.3061701.6850221.16.fvh75t
# Скачать все альбомы, 20 лучших песен и радио исполнителя
xm d http://www.xiami.com/artist/23460?spm=a1z1s.6928801.1561534521.115.ShW08b
# Скачать избранное пользователя, рекомендованные треки Xiami и радио
xm d http://www.xiami.com/u/141825?spm=a1z1s.3521917.0.0.zI0APP
# Скачать топ-чарты
xm d http://www.xiami.com/chart/index/c/2?spm=a1z1s.2943549.6827465.6.VrEAoY
# Скачать музыку определённого жанра или послушать радио
xm d http://www.xiami.com/genre/detail/gid/2?spm=a1z1s.3057857.6850221.1.g9ySan
xm d **Перевод текста на русский язык:**
#### Поиск файлов и папок:
* **Поиск по времени в обратном порядке**:
* `fs keyword1 keyword2 [directory]` — поиск без рекурсии по ключевым словам;
* `fss keyword1 keyword2 [directory]` — поиск по размеру без рекурсии.
* **Поиск по размеру в обратном порядке**:
* `fn keyword1 keyword2 [directory]` — поиск файлов по имени без рекурсии;
* `fnn keyword1 keyword2 [directory]` — поиск файлов по имени в обратном порядке без рекурсии.
* **Рекурсивный поиск с добавлением -R**:
* `f 'ice and fire' /doc -R` — рекурсивный поиск;
* `f keyword1 keyword2 [directory] -t all -R` — поиск всех файлов с расширением по ключевому слову;
* `f keyword1 keyword2 [directory] -t f,all -R` — поиск всех файлов и файлов с расширением по ключевому слову.
**По умолчанию используется каталог /.**
* **О -H, -T, -I, -E**:
* `-I, -E, -H, -T` — можно использовать несколько совпадений, которые должны быть размещены в конце командной строки.
* **Примеры поиска**:
* `f keyword1 keyword2 [directory] \| d -R` — после рекурсивного поиска рекурсивно загрузить файлы;
* `ftt keyword1 keyword2 [directory] \| p -R` — после поиска по времени в обратном порядке рекурсивно воспроизвести файлы;
* `f keyword1 keyword2 [directory] \| rnr foo bar -R` — переименовать файлы после рекурсивного поиска с помощью регулярного выражения;
* `f keyword1 keyword2 [directory] \| rm -R -T tail` — удалить файлы после рекурсивного поиска;
* `f keyword1 keyword2 [directory] \| mv /path/to -R` — переместить файлы после рекурсивного поиска.
#### Список файлов:
* `l path1 path2` — список файлов по именам;
* `ll path1 path2` — список файлов в обратном порядке по именам;
* `ln path1 path2` — список файлов по именам в прямом порядке;
* `lnn path1 path2` — список файлов в обратном порядке по именам.
* **Список файлов или папок**:
* `l path1 path2 -t f` — только файлы;
* `l path1 path2 -t d` — только папки.
* **О -H, -T, -I, -E**:
* `-I, -E, -H, -T` — можно использовать несколько совпадений, которые должны быть размещены в конце командной строки.
* **Пример списка**:
* `l path1 path2 -H head -T tail -I "^re(gul.*) ex(p|g)ress$"` — список файлов, соответствующих регулярному выражению.
* **Отображение абсолютного пути**:
* `l path1 path2 -v`.
* **Отображение размера файла и MD5**:
* `l path1 path2 -vv`.
* **Пустые папки**:
* `l path1 path2 -t e,d`.
* **Непустые папки**:
* `l path1 path2 -t ne,d`.
#### Создание ссылок для обмена файлами:
* `S или share path1 path2` — создать ссылку для каждого предоставленного пути;
* `S или share [-P pawd или --passwd pawd] path1 path2` — создать зашифрованную ссылку для каждого предоставленного пути.
#### Просмотр использования дискового пространства:
* `du path1 path2` — размер всех файлов в папке (без подпапок);
* `du path1 path2 -R` — размер всех файлов (включая подпапки).
**Эквивалентно `l path1 path2 -t du [-R]`, например:**
* `du /doc /videos -R`.
#### Загрузка файлов офлайн:
* `a или add http https ftp ed2k remotepath` — добавить URL-адрес для скачивания;
* `a или add magnet remotepath [-t {m,i,d,p}]` — добавить торрент-ссылку;
* `a или add remote_torrent [-t {m,i,d,p}]` — использовать торрент из сетевого диска.
#### Операции с задачами офлайн-загрузки:
* `j или job` — просмотр задач офлайн-загрузки;
* `jd или jobdump` — удаление всех незагружаемых задач;
* `jc или jobclear taskid1 taskid2` — удаление загружаемых задач;
* `jca или jobclearall` — удаление всех задач.
#### Параметры:
* `-a num, --aria2c num` — количество сегментов загрузки aria2c;
* `-g num, --aget_s num` — количество сегментов загрузки aget;
* `-k num, --aget_k size` — размер сегмента загрузки aget;
* `-p, --play` — воспроизведение с mpv;
* `-P password, --passwd password` — пароль для обмена, зашифрованный пароль;
* `-y, --yes` — для rmre, mvre, cpre, rnre;
* `-q, --quiet` — режим без вывода, используется для download, play;
* `-V, --VERIFY` — проверка;
* `-v, --view` — подробный просмотр, например:
* `l -v` — показать абсолютный путь;
* `a magnet /path -v` — скачать и показать скачанный файл;
* `d -p url1 url2 -v` — воспроизвести файл и показать полный путь к нему;
* `l path1 path2 -vv` — показать размер и md5 файла;
* `-s SECRET, --secret SECRET` — извлечь пароль;
* `-f number, --from_ number` — начать с номера (для download, play), например: `p /video -f 42`;
* `-t ext, --type_ ext` — параметр типа, разделяется «,». ```
/local/to/encrypted_file [-P password] -m 'aes-256-cfb'
bp dc /local/to/encrypted_file [-P пароль]
bp dc /local/to/directory [-P пароль]```
bp p http://pan.baidu.com/s/xxxxxxxxx -s [секрет]
bp cd /movie
bp p movie -R # Рекурсивное воспроизведение всех медиафайлов в /movie
# Воспроизведение потока мультимедиа (m3u8)
Качество и скорость воспроизведения такие же, как при просмотре в браузере.
Если исходный файл имеет высокое разрешение (720P, 1280P), поток мультимедиа автоматически преобразуется в 480P.
#### Оффлайн загрузка:
```bp a http://mirrors.kernel.org/archlinux/iso/latest/archlinux-2014.06.01-dual.iso /path/to/save
bp a https://github.com/PeterDing/iScript/archive/master.zip /path/to/save
bp a ftp://ftp.netscape.com/testfile /path/to/save
bp a 'magnet:?xt=urn:btih:64b7700828fd44b37c0c045091939a2c0258ddc2' /path/to/save -v -t a
bp a 'ed2k://|file|[美]徐中約《中国近代史》第六版原版PDF.rar|547821118|D09FC5F70DEA63E585A74FBDFBD7598F|/' /path/to/save
bp a /path/to/a.torrent -v -t m,i # Использование торрента на сетевом диске, загрузка в /path/to
# Примечание ------------------
↓
Торрент на сетевом диске
#### Загрузка по magnet — выбор файла:
```-t m # Видеофайлы (по умолчанию), например: mkv, avi и т. д.
-t i # Графические файлы, например: jpg, png и т.д.
-t d # Файлы документов, например: pdf, doc, docx, epub, mobi и т. д.
-t p # Сжатые файлы, например: rar, zip и т. д.
-t a # Все файлы
m, i, d, p, a можно комбинировать произвольно (разделять с помощью ,), например: -t m, i, d -t d,p -t i,p
remotepath по умолчанию равен /
bp a 'magnet:?xt=urn:btih:64b7700828fd44b37c0c045091939a2c0258ddc2' /path/to/save -v -t p,d
bp a /download/a.torrent -v -t m,i,d # Использование торрента на сетевом диске, загрузка в /download
#### Операции с офлайн-задачами:
```bp j
bp j 3482938 8302833
bp jd
bp jc taskid1 taskid2
bp jc 1208382 58239221
bp jca
#### Загрузка (по умолчанию не рекурсивно, рекурсивно с -R):
```# Поддерживает выбор типа файла
bp u ~/Documents/* # По умолчанию загружать все файлы
bp u ~/Documents/* -t f # Не загружать папки
bp u ~/Documents/* -t d # Не загружать файлы
bp u ~/Documents/* -t f,d # Не загружать папки и файлы
bp u ~/Documents/reading/三体\ by\ 刘慈欣.mobi /doc -m o
# Режим загрузки:
# -m o --> Повторная загрузка
# -m c --> Продолжение загрузки (по умолчанию)
# Рекурсия с -R
bp u ~/Videos/*.mkv /videos -t r
# Выполнять только быструю загрузку
bp u ~/Documents ~/Videos ~/Documents /backup -t e -R
# Если файл уже существует в облаке, он не будет загружен (без сравнения md5)
# -t e используется, -m o не действует
bp u ~/Documents ~/Videos ~/Documents /backup -t r,e # Оба режима выше
#### Зашифрованная загрузка (по умолчанию без рекурсии, с рекурсией с -R):
```bp u ~/{p1,p2,p3} -t ec [-P пароль] # Метод шифрования по умолчанию 'aes-256-cfb'
bp u ~/{p1,p2,p3} -t ec [-P пароль] -m 'rc4-md5'
# Обратите внимание:
# После загрузки имя файла по умолчанию будет иметь префикс encrypted_
# Без префикса используйте -t ec, np
#### Перемещение:
```bp s url remotepath [-s секрет]
# url — это общий доступ другого человека, например: http://pan.baidu.com/share/link?shareid=xxxxxxx&uk=xxxxxxx, http://pan.baidu.com/s/xxxxxxxx
bp s 'http://pan.baidu.com/share/link?shareid=xxxxxxx&uk=xxxxxxx' /path/to/save
bp s http://pan.baidu.com/s/xxxxxxxx /path/to/save
bp s http://pan.baidu.com/s/xxxxxxxx /path/to/save -s xxxx
bp s http://pan.baidu.com/s/xxxxxxxx#dir/path=/path/to/anything /path/to/save -s xxxx
bp s http://pan.baidu.com/inbox/i/xxxxxxxx /path/to/save
# -t c для непрерывной передачи (если передача не удалась, вы можете начать с места сбоя при следующей попытке передачи, используется для передачи большого количества файлов)
bp s 'http://pan.baidu.com/share/link?shareid=2705944270&uk=708312363' /path/to/save -t c
# Обратите внимание: команда должна быть одинаковой при повторном запуске.
#### Поиск:
```# По умолчанию поиск в текущем рабочем каталоге сервера cwd
bp f keyword1 keyword2
bp f "this is one keyword" "this is another keyword" /path/to/search
bp f ooxx -R
bp f 三体 /doc/fiction -R
bp f 晓波 /doc -R
bp ff keyword1 keyword2 /path/to/music Без рекурсии поиск в обратном порядке
bp ft keyword1 keyword2 /path/to/doc Без рекурсии поиск по времени
bp ftt keyword1 keyword2 /path/to/other Без рекурсии поиск по времени в обратном порядке
bp fs keyword1 keyword2 Без рекурсии поиск по размеру
bp fss keyword1 keyword2 Без рекурсии поиск по размеру в обратном порядке
bp fn keyword1 keyword2 Без рекурсии поиск по имени
bp fnn keyword1 keyword2 Без рекурсии поиск по имени в обратном порядке
# Поиск с рекурсией + -R
# О -H, -T, -I, -E
bp f mp3 /path/to/search -H "[" "01" -T ".tmp" -I ".*-.*" -R
# Искать все аккаунты
bp f iDoNotKnow [каталог] -t all -R
bp f archlinux ubuntu [каталог] -t f,all -T .iso -R
# Поиск канала (поддерживает только download, play, rnre, rm, mv)
bp f bioloy \| d -R Рекурсивный поиск, затем рекурсивная загрузка
bp ftt ooxx \| p -R -t f Рекурсивный поиск (поиск по времени в обратном порядке), затем рекурсивное воспроизведение
bp f sound \| rnr mp3 mp4 -R Рекурсивный поиск, затем переименование по регулярному выражению
bp f ccav \| rm -R -T avi Рекурсивный поиск, затем удаление
bp f 新闻联播(大结局) \| mv /Favor -R Рекурсивный поиск, затем перемещение
#### Восстановление с использованием bt.py для файлов, зашифрованных с помощью base64:
```rnr /ooxx -t f,bd64
!! Обратите внимание: /ooxx
``` ### В запросе скорее всего текст технической направленности из области разработки и тестирования программного обеспечения. Основной язык текста запроса — китайский.
#### **Перевод текста на русский язык:**
Все файлы должны быть зашифрованы с помощью base64, а в конце зашифрованного сегмента должен быть суффикс .base64.
# Можно использовать by.py следующим образом:
ls, переименование, перемещение, удаление, копирование, использование регулярных выражений для работы с файлами:
см. команды
https://github.com/banbanchs/pan-baidu-download/blob/master/bddown_core.py
python2-requests (https://github.com/kennethreitz/requests)
bencode (https://github.com/bittorrent/bencode)
Взаимное преобразование magnet и torrent.
Фильтрация чувствительных слов используется для чистых периодов сети в baidu, xunlei.
При использовании прокси в Китае может быть лучший эффект:
Есть два способа использования прокси:
8.30 после этого его нельзя будет использовать. См. http://tieba.ba/baiduyunhuifuguankan.html
[Похоже, что Baidu Cloud был разблокирован, и видео продолжительностью восемь секунд в Baidu Netdisk было восстановлено]
!! Обратите внимание: после фильтрации сгенерированный торрент можно использовать только один раз. Если вам нужно использовать его снова, используйте -n, чтобы изменить имя верхнего уровня.
Для преобразования магнитной ссылки в сиды используется:
http://bt.box.n0808.com
http://btcache.me
http://www.sobt.org # 302 --> http://www.win8down.com/url.php?hash=
http://www.31bt.com
http://178.73.198.210
http://www.btspread.com # ссылка на http://btcache.me
http://torcache.net
http://zoink.it
http://torrage.com # для torrage.com необходимо настроить прокси, например: -p 127.0.0.1:8087
http://torrentbox.sx
http://www.torrenthound.com
http://silvertorrent.org
http://magnet.vuze.com
Если есть лучшие источники сидов, пожалуйста, отправьте вопрос.
Для baidu добавьте задачу в автономном режиме, затем подождите некоторое время, прежде чем загрузка завершится.
# magnet в torrent
m или mt магнитная_ссылка1 магнитная_ссылка2 [-d /путь/для/сохранения]
m -i /есть/файлы -d новый
# torrent в magnet, вывод magnet
t или tm путь1 путь2
# фильтрация чувствительных слов
# Есть два режима
# -t n (по умолчанию) заменяет имена файлов цифрами
# -t be64 использует base64 для шифрования имён файлов. После загрузки торрента через Baidu вы можете использовать pan.baidu.com.py rnr /path -t f,bd64 для восстановления исходных имён.
c или ct магнитная_связь1 магнитная_связь2 /путь/к/торренту1 /путь/к/торренту2 [-d /путь/для/сохранения]
c -i /там/есть/файлы и_другие_директории -d новые # поиск магнитной связи в файлах или папках, затем фильтрация
# Фильтрация чувствительных слов — преобразование магнитной связи или торрента в нечувствительный торрент
# /путь/для/сохранения по умолчанию равен .
# Использовать имена файлов, зашифрованные с помощью base64:
c магнитная_связь1 магнитная_связь2 /путь/к/торренту1 /путь/к/торренту2 [-d /путь/для/сохранения] -t be64
# Используйте регулярные выражения для фильтрации чувствительных слов:
cr или ctre foo bar магнитная_связь1 /путь/к/торренту1 [-d /путь/для/сохранения]
# foo и bar — это регулярные выражения
-p PROXY, --proxy PROXY # прокси для torrage.com, например: -p "sooks5://127.0.0.1:8883"
-t TYPE_, --type_ TYPE_ # тип параметра:
# -t n (по умолчанию) заменяет имена файлов цифрами
# -t be64 шифрует имена файлов с помощью base64. После загрузки торрента через Baidu вы можете использовать pan.baidu.com.py rnr /path -t f,bd64 для восстановления оригинальных имён.
-d DIRECTORY, --directory DIRECTORY # указать путь сохранения торрентов, например: -d /путь/для/сохранения
-n NAME, --name NAME # имя верхней папки, например: -m thistopdirectory
-i localpath1 localpath2, --import_from localpath1 localpath2 # импортировать магнитные ссылки из локального текстового файла с использованием регулярного выражения
bt — это псевдоним bt.py (alias bt='python2 /путь/к/bt.py')
bt mt магнитная_связь1 магнитная_связь2 [-d /путь/для/сохранения]
bt tm путь1 путь2
bt ct магнитная_связь1 путь1 [-d /путь/для/сохранения]
bt m магнитная_связь1 магнитная_связь2 [-d /путь/для/сохранения]
bt t путь1 путь2
bt c магнитная_связь1 путь1 [-d /путь/для/сохранения]
# Поиск магнитной связи с помощью torrage.com
bt m магнитная_связь1 путь1 -p 127.0.0.1:8087
bt c магнитная_связь1 путь1 -p 127.0.0.1:8087
# поиск магнитной связи в файле или папке, затем фильтрация
bt c -i ~/Downloads -d new
# используйте регулярные выражения для фильтрации чувствительных слов
bt cr '.*(старый).*' '\1' магнитная_связь
bt cr 'old.iso' 'new.iso' /путь/к/торренту
# использовать имена файлов, зашифрованных с помощью base64:
bt c магнитная_связь -t be64
wget
aria2 (~ 1.18)
python2-requests (https://github.com/kennethreitz/requests)
mpv (http://mpv.io)
mplayer # mpv не работает на моём Linux, поэтому я использую mplayer
Необходимо войти в систему pan115 login при первом использовании.
Скрипт предназначен для загрузки собственных файлов с 115 сетевого диска и не поддерживает обмен файлами других пользователей.
По умолчанию используется wget для загрузки всех файлов. Вы можете использовать aria2 с параметром -a.
Теперь и VIP, и обычные пользователи могут загружать файлы только по одному каналу. Использование aria2 для загрузки больше не имеет смысла.
Файлы сохраняются в текущем каталоге по умолчанию.
Файлы cookie сохраняются в ~/.115.cookies
О воспроизведении:
Введите 1 раз Enter в терминале, где запущен скрипт, чтобы остановить текущее воспроизведение и перейти к следующему файлу. Введите 2 раза Enter, чтобы остановить текущее воспроизведение и выйти.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )