Package: vsco-downloader
VSCO DownloaderПравославная версия READMEThis is a simple console async downloader fromvsco.coused original web REST requests.So there is no fcking CLI/GUI here as befits normal scripts.It works through a call from the terminal
(Sry, win-users, I know that really can be bad for yours...)Btw sup2ch⚡andVSCO находок группаCHANGELOG.mdRequirementsAll python requirements in therequirements.txt:aiohttpaiofilesTo download videos inm3u8format (parted videos with large size), you need compiledffmpeg, see description for a--ffmpeg-binargumentInstallationEasy and recommended installation withPIPInstall:pip install vsco-downloaderUpgrade:pip install vsco-downloader --upgradeInstall from sourceCommon stepgit clone https://github.com/benhacka/vsco-downloader
cd vsco-downloaderFor Windows users: changepython3withpythonin all console commandYou can call the script from any directory in terminal simply by typing the commandvsco-downloaderafter installing the package on the system (installation viavar2orvar3)[var 1]. Usage w/o install dist pkg (I do not recommend this method)python3 -m pip install -r requirements.txt1.1 Run main from package:python3 -m vsco_downloader1.2 Run a script:python3 vsco_downloader.pyor [var 2]. Install package with setup.pypython3 setup.py install --userFor Linux users: you can run w/o--userbut withsudofor installing in/usr/lib/python3.*/site-packages/.
With--userit will install in the~/.local/bin/(depends on the distribution... i use arch btw [it's a stupid lie i use the best of arch - manjaro])For Windows users:--useris not required (I think so..?)or [var 3]. Install package with pip from githubpython3 -m pip install git+https://github.com/benhacka/vsco-downloader.gitUse casesAll use cases wrote for installed package and calling withvsco-downloaderI highly recommend you to setvsco_download_pathenvironment variable (seeUsage help).Download users:foo,barandbaz:vsco-downloader foo bar bazDownload usersfoo,barandbazconsistently:vsco-downloader foo bar baz -l 1Download only photos forbar,baz:vsco-downloader bar baz -r mini-video videoOnly save download links w/o downloading content forfoo,bar:vsco-downloader foo bar -r all -pDownload from file and args with skipping existing to ~/Download# show file with accs$cataccs_to_dl

foo


https://vsco.co/baz/galleryvsco-downloader bar -u accs_to_dl -s -d /home/username/Download/6. Download without restoring the names of files that are in the folder without a date as a prefix in the name
(if the file name matches the name of the direct link)vsco-downloader foo bar baz -nrFor more info see Usage helpUsage help (help menu)VSCO downloader

positional arguments:
  users                 urls/usernames. The script supports multiple download with passing to this argument. Urls can be either
                        to the gallery or to a separate file (the entire profile will be downloaded). Both short (from the mobile
                        version) and long urls (desktop browser) format are supported

optional arguments:
  -h, --help            show this help message and exit
  -u USERS_FILE_LIST, --users-file-list USERS_FILE_LIST
                        Same as the users but list of targets in file (one per line)
  --ffmpeg-bin FFMPEG_BIN
                        Name for ffmpeg binary that can be used for calling from terminal. Default "ffmpeg". If you have
                        installed ffmpeg from repo it should be in the /usr/bin/ffmpeg"
  --download-path-variable DOWNLOAD_PATH_VARIABLE
                        The download path in your environment variable. Default "vsco_download_path" It can be an export in the
                        shellrc (~/.bashrc for example)for Linux users. For Win users it is something like system environments.
  -d DOWNLOAD_PATH, --download-path DOWNLOAD_PATH
                        Force downloading path. If this arg passed possible path from --download-path-variable will be reloaded
                        (priority arg). By default env path is empty download path is "." (current dir).
  -r [{photo,mini-video,video} ...], --disabled-content [{photo,mini-video,video} ...]
                        Disabled of downloading some type of a content.Possible types: photo, mini-video, video
  -l min 1; max 500, --download-limit min 1; max 500
                        Limit for all get request at same time. Default 100
  -f min 1; max 100, --max-fmpeg-threads min 1; max 100
                        Limit for for ffmpeg concat threads at same time. Default 10
  -b BLACK_LIST_USER_FILE, --black-list-user-file BLACK_LIST_USER_FILE
                        File with usernames/full urls — one per line, to skip scraping and downloading
  -s, --skip-existing   Skip scrapping and downloading steps for existing users from download folder. Pass the param for
                        skipping, default - False
  -c {ts,mp4}, --container-for-m3u8 {ts,mp4}
                        A container for stream (m3u8) videos. Default "mp4", a possible alternative is "ts".
  -p, --save-parsed-download-urls
                        Store urls in the file into user dir. Filename has saving datetime so this will not overwrite old links.

  -nr, --no-restore-datetime
                        The script trying to restore file creation date before
                        downloading to skip downloading step for the files saved w/o
                        datetime. Pass the arg for skipping this step.
  -v, --version         Show the current script version

Console VSCO downloaderChange LogAll notable changes to this project will be documented in this file.The format is based onKeep a Changelogand this project adheres toSemantic Versioning.[0.1.6] - 2021-08-13FixedFixed setup.py and setup.cfg[0.1.4.1] - 2021-08-12FixedFixed setup.py[0.1.4] - 2021-08-12AddedAdded a version argChangedChnagedREADMEandsetup.pyforpypi[0.1.3] - 2021-08-07FixedAdded an addition possible path for parsing username.Fixed Window's console encoding error - addedcp1252encoding.Fixed Window's (with a kludge) issue with a closed loop at finishing of the script.[0.1.2] - 2021-08-02AddedAdded new functionality for restoring the datetime of the content
from previously downloaded with not this script.
Can be disabled by passing--no-restore-datetime.Added Russian version of README.[0.1.1] - 2021-08-01AddedAdded pseudo-typeallto content types to block downloading (-r/--disabled-content)AddedCHANGELOG.mdAdded a simple script for runningvsco_downloader.__main__.mainChangedChanged all relative paths fromdot(.) topackage name dot(vsco_downloader.*).FixedFixedpython_requires(required 3.7+ python version but not a 3.8+ one) in thesetup.pyFixed false-positive full-url checking raise[0.1.0] - 2021-07-31AddedWhole projectVSCO DownloaderOriginal READMEПростенький асинхронный консольный скриптик для скачки сvsco.coна оригинальных REST запросах, неотличимых от обычного браузера.Скрипт без всяких залупных консольных и гуевых интерфейсов, как и пологается ему быть, если это не скрипт курильщикаРаботает через вызов из терминала(Соря виндовозы, я знаю, что это может быть плохой новостью)Кста, сапХаркач⚡иVSCO находок группаCHANGELOG.md - изменения по релизамЗависимостиВсе питонячьи зависимости в файлеrequirements.txt:aiohttpaiofilesДля скачки видосовm3u8- раздробленные на части куски видео, нуженffmpeg, смотри описание для аргумента запуска--ffmpeg-binУстановкаБыстрая и рекомендованная (установка сPIP)Установка:pip install vsco-downloaderОбновление:pip install vsco-downloader --upgradeУстановка из исходниковОбщий этапСклонить реп и зайти в директорию:git clone https://github.com/benhacka/vsco-downloader
cd vsco-downloaderДля виндовозов: во всех консольных комндах ниже мб нужно поменятьpython3наpythonПосле установки пакета в систему (установка черезвариант 2иливариант 3) можно вызвать скрипт из консоли в любой директории просто набрав командуvsco-downloader[вариант 1]. Использование без установки пакета (Не рекомендую такой метод)python3 -m pip install -r requirements.txt1.1 Запустить скрипт через пакет:python3 -m vsco_downloader1.2 Запустить скрипт через вырожденный скрипт с вызовом главного в пакете:python3 vsco_downloader.pyили [вариант 2]. Установка пакета через setup.pypython3 setup.py install --userДля линуксоидов: можно запустить установку без--userно сsudoдля установки в/usr/lib/python3.*/site-packages/. C--userон будет установлен в~/.local/bin/, но это может отличать от дистра к дистру (а мб и нет, не ебу, в этом зоопарке всякое можеты быть).Для виндовозов:--userне требуется (сокрее всего так, но хз что будет если с ним все же попытаться поставить)or [var 3]. Установка через pip с гитаpython3 -m pip install git+https://github.com/benhacka/vsco-downloader.gitПримеры использованияВсе примеры написаны для установленного в систему пакета с вызовом черезvsco-downloaderКрайне рекомендую установить переменную окруженияvsco_download_path(см.Помощь в использовании).Скачать пользователей:foo,barandbaz:vsco-downloader foo bar bazСкачать пользователейfoo,barandbazпоследовательно (по одному):vsco-downloader foo bar baz -l 1Скачать только фото пользователейbar,baz:vsco-downloader bar baz -r mini-video videoСохранить только ссылки на контент без скачки для пользователейfoo,bar:vsco-downloader foo bar -r all -pСкачать из файла и аргументом, пропустив существующие акки в ~/Download# просмотр файл с акками$cataccs_to_dl

foo

https://vsco.co/baz/galleryvsco-downloader bar -u accs_to_dl -s -d /home/username/Download/6. Скачка без восстановления имен файлов, которые лежат в папке без даты в виде префикса в имени
(если имя файла соответствует имени по прямой ссылке)vsco-downloader foo bar baz -nrБольше инфы впомощь в использованииПомощь в использовании (меню help в скрипте)VSCO downloader

позиционные аргументы:
  users                 ссылка/юзернеймы. Скрипт поддерживает загрузку с нескольких источников через этот аргуемент. 
                        Ссылка может быть как на галерею, так и на отдельный файл (скачивается весь конент профиля). 
                        Поддерживаются короткие (то, что шарится с мобилок) и длинные форматы ссылок 
                        (ссылка в адресной строке десктопного браузера)

именные аргументы:
  -h, --help            show this help message and exit
  -u USERS_FILE_LIST, --users-file-list USERS_FILE_LIST
                        То же самое что и users, но из файла (по одной ссылке или юзернейму на строке)
  --ffmpeg-bin FFMPEG_BIN
                        Имя ffmpeg, через которое скрипт сможет денуть его. По умолчанию "ffmpeg". 
                        Если ffmpeg был установлен с репа, то скорее всего лежит в /usr/bin/ffmpeg 
                        и доступен через команду ffmpeg в любом месте"
  --download-path-variable DOWNLOAD_PATH_VARIABLE
                        Переменная окружения пути скачки. По умолчанию "vsco_download_path" Может быть задана через экспорт 
                        в shellrc (~/.bashrc for example) для линуксоидов. Для виндовозов устанавливается 
                        где-то в system environments.
  -d DOWNLOAD_PATH, --download-path DOWNLOAD_PATH
                        Форсированный путь для скачки. Если аргумент задан, то перегружает vsco_download_path
                        (более приоритетная). Без vsco_download_path не задан, то этот аргумент "." 
                        (текущая папка откуда вызван скрипт).
  -r [{photo,mini-video,video} ...], --disabled-content [{photo,mini-video,video} ...]
                        Отключает загрузку выбранного типа контента. Возможные типы: photo, mini-video, video
  -l min 1; max 500, --download-limit мин 1; макс 500
                        Лимит на запросы к серверам в один момент. Default 100
  -f min 1; max 100, --max-fmpeg-threads мин 1; макс 100
                        Лимит на склейку с ffmpeg в один момент. Default 10
  -b BLACK_LIST_USER_FILE, --black-list-user-file BLACK_LIST_USER_FILE
                        Файл с именами или полными ссылками (короткие игнорируются), для пропуска этапов сбора и скачки
  -s, --skip-existing   Пропустить этапы сбора и скачки для пользователей папки с именами которых уже сущесвуют. 
                        Для включения опции указать аргумент, по умолчанию выключено
  -c {ts,mp4}, --container-for-m3u8 {ts,mp4}
                        Контейнер для стриминговых (m3u8) видео. По умолчанию "mp4", возможная альтернатива - "ts".
  -p, --save-parsed-download-urls
                        Сохранить ссылки на контент в файл с пользователем. 
                        В имени файла текущая дата сохранения, поэтому не происходит перезапись файла.
 
  -nr, --no-restore-datetime
                        [НЕ - аргумент отрицание] Скрипт попытается восстановить дату загрузки файла перед загрузкой
                        для пропуска загрузки существующих уже файлов в именах которых нет даты. Для отключения 
                        опции надо указать этот аргумент  
  -v, --version         Показать текущую версию скрипта
Console VSCO downloader