Name | ttsave JSON |
Version |
1.3.5
JSON |
| download |
home_page | https://github.com/FlacSy/ttsave |
Summary | A simple tool to save TikTok videos |
upload_time | 2024-09-05 23:45:20 |
maintainer | None |
docs_url | None |
author | FlacSy |
requires_python | None |
license | Apache |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# TTSAVE - Скачивать ведь так просто 🫢
## Технологии
![Python](https://img.shields.io/badge/Python-3.10.0-blue)
![Selenium](https://img.shields.io/badge/Selenium-4.23.1-orange)
![License](https://img.shields.io/github/license/FlacSy/ttsave)
![OS](https://img.shields.io/badge/platform-windows%20%7C%20macos%20%7C%20linux-lightgrey)
## Описание
TTSave упрощает процесс скачивания видео из TikTok, предоставляя удобный интерфейс для пользователей. Библиотека использует Selenium для автоматизации процесса скачивания, обеспечивая стабильность и надежность.
## Функционал TTSave
- Скачивание видео
- Скачивание фото и аудио дорожки
- Cкачмвание музыки
## Установка
1. Используйте pip для установки из [PyPi](https://pypi.org/project/ttsave/):
```bash
pip3 install ttsave
```
2. Используйте pip для установки из [GitHub](https://github.com/FlacSy/ttsave/):
```bash
pip3 install git+https://github.com/FlacSy/ttsave
```
## Требования
- Python 3.10.0
- Установленный Chrome браузер и ChromeDriver
Библиотеки перечислены в файле [requirements.txt](./requirements.txt)
## Пример использования
<details>
<summary><h2>Пример кода</h2></summary>
```python
import os
from selenium import webdriver
from ttsave import TTSave
def main():
url = input("TikTok URL: ")
options = webdriver.FirefoxOptions()
download_dir = os.path.dirname(os.path.abspath(__file__))
# profile_path = 'C:/Users/<Ваше_Имя>/AppData/Roaming/Mozilla/Firefox/Profiles'
# options.set_preference('profile', profile_path)
downloader = TTSave(
url=url,
options=options,
driver_class=webdriver.Firefox,
download_dir=download_dir
)
out = downloader.download()
print(out)
if __name__ == "__main__":
main()
```
</details>
## Более подробный пример можно найти в **[example.py](./example.py)**
## CLI
TTSave также предоставляет удобный интерфейс командной строки (CLI) для скачивания видео из TikTok.
![cli](local/cli.png)
### Установка
CLI устанавливается вместе с библиотекой TTSave. Используйте одну из команд установки, приведенных выше.
### Примеры использования CLI
```bash
# Запуск CLI
ttsave
# Скачивание видео по URL
ttsave download <TikTok URL> <download_dir> --debug
# Показать версию
ttsave version
# Показать справку
ttsave help
```
### Команды CLI
- `download <url> <download_dir> --debug`: Скачивание видео или фото из TikTok по указанному URL. Параметр `download_dir` является необязательным, по умолчанию используется текущая директория. Опция `--debug` включает режим отладки.
- `version`: Показать информацию о версии TTSave CLI.
- `help`: Показать доступные команды.
### FAQ
- ### Ничего не скачивается
Просто подождите и попробуйте позже.
Если это не помогло, проверьте инструкции ниже:
Убедитесь, что все делаете по инструкции.
Если это не помогло, откройте issue на [GitHub](https://github.com/FlacSy/ttsave/issues).
- ### Не скачивается фото или не отображается другая информация.
Запустите TTSave в режиме DEBUG.
Если вы используете CLI, добавьте аргумент `--debug`.
Если вы используете класс TTSave, то при его создании установите параметр `debug_mode=True`.
Если вы видите капчу в окне браузера, попробуйте использовать профиль вашего браузера.
1. **Chrome браузер:**
```python
from selenium import webdriver
from ttsave import TTSave
profile_path = 'C:/Users/<Ваше_Имя>/AppData/Local/Google/Chrome/User Data/Default'
options = webdriver.ChromeOptions()
options.add_argument(f'user-data-dir={profile_path}')
downloader = TTSave(
options=options,
driver_class=webdriver.Chrome,
debug_mode=True
...
)
```
Еще рекомендуеться поставить дополнительные опции для скрытия автоматизированого ПО. Пример:
```python
...
options = webdriver.ChromeOptions()
options.add_argument("--disable-blink-features=AutomationControlled")
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
```
2. **Firefox браузер:**
```python
from selenium import webdriver
from ttsave import TTSave
profile_path = 'C:/Users/<Ваше_Имя>/AppData/Roaming/Mozilla/Firefox/Profiles'
options = webdriver.FirefoxOptions()
options.set_preference('profile', profile_path)
downloader = TTSave(
options=options,
driver_class=webdriver.Firefox,
debug_mode=True
...
)
```
Если вы используете CLI, добавьте флаг `--profile`, указав путь к вашему **Chrome** профилю:
```bash
ttsave download https://vm.tiktok.com/qwerty --debug --profile "C:/Users/<Ваше_Имя>/AppData/Local/Google/Chrome/User Data/Default"
```
## Если у вас возникли вопросы или проблемы, пожалуйста, откройте issue на [GitHub](https://github.com/FlacSy/ttsave/issues).
Raw data
{
"_id": null,
"home_page": "https://github.com/FlacSy/ttsave",
"name": "ttsave",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "FlacSy",
"author_email": "flacsy.tw@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/97/65/62588b10a0a2322b055d9db3ae2a1d507760c3fc1e4ce8ccee01674a7355/ttsave-1.3.5.tar.gz",
"platform": null,
"description": "# TTSAVE - \u0421\u043a\u0430\u0447\u0438\u0432\u0430\u0442\u044c \u0432\u0435\u0434\u044c \u0442\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e \ud83e\udee2\r\n\r\n## \u0422\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438\r\n\r\n![Python](https://img.shields.io/badge/Python-3.10.0-blue)\r\n![Selenium](https://img.shields.io/badge/Selenium-4.23.1-orange)\r\n![License](https://img.shields.io/github/license/FlacSy/ttsave)\r\n![OS](https://img.shields.io/badge/platform-windows%20%7C%20macos%20%7C%20linux-lightgrey)\r\n\r\n## \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\r\n\r\nTTSave \u0443\u043f\u0440\u043e\u0449\u0430\u0435\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u044f \u0432\u0438\u0434\u0435\u043e \u0438\u0437 TikTok, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044f \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439. \u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 Selenium \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u044f, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044f \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438 \u043d\u0430\u0434\u0435\u0436\u043d\u043e\u0441\u0442\u044c.\r\n\r\n## \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b TTSave\r\n- \u0421\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435 \u0432\u0438\u0434\u0435\u043e \r\n- \u0421\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435 \u0444\u043e\u0442\u043e \u0438 \u0430\u0443\u0434\u0438\u043e \u0434\u043e\u0440\u043e\u0436\u043a\u0438 \r\n- C\u043a\u0430\u0447\u043c\u0432\u0430\u043d\u0438\u0435 \u043c\u0443\u0437\u044b\u043a\u0438\r\n\r\n## \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\r\n\r\n1. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 pip \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438\u0437 [PyPi](https://pypi.org/project/ttsave/):\r\n\r\n ```bash\r\n pip3 install ttsave\r\n ```\r\n2. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 pip \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438\u0437 [GitHub](https://github.com/FlacSy/ttsave/):\r\n\r\n ```bash\r\n pip3 install git+https://github.com/FlacSy/ttsave\r\n ```\r\n\r\n## \u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\r\n- Python 3.10.0\r\n- \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0439 Chrome \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0438 ChromeDriver\r\n\r\n\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u044b \u0432 \u0444\u0430\u0439\u043b\u0435 [requirements.txt](./requirements.txt)\r\n\r\n## \u041f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\r\n\r\n<details>\r\n <summary><h2>\u041f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u0434\u0430</h2></summary>\r\n\r\n```python\r\nimport os\r\nfrom selenium import webdriver\r\nfrom ttsave import TTSave\r\n\r\ndef main():\r\n url = input(\"TikTok URL: \")\r\n options = webdriver.FirefoxOptions()\r\n\r\n download_dir = os.path.dirname(os.path.abspath(__file__))\r\n\r\n # profile_path = 'C:/Users/<\u0412\u0430\u0448\u0435_\u0418\u043c\u044f>/AppData/Roaming/Mozilla/Firefox/Profiles'\r\n # options.set_preference('profile', profile_path)\r\n\r\n downloader = TTSave(\r\n url=url,\r\n options=options,\r\n driver_class=webdriver.Firefox,\r\n download_dir=download_dir\r\n )\r\n\r\n out = downloader.download()\r\n print(out)\r\n\r\nif __name__ == \"__main__\":\r\n main()\r\n```\r\n\r\n</details>\r\n\r\n## \u0411\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0432 **[example.py](./example.py)** \r\n\r\n## CLI\r\n\r\nTTSave \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 (CLI) \u0434\u043b\u044f \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u044f \u0432\u0438\u0434\u0435\u043e \u0438\u0437 TikTok. \r\n\r\n![cli](local/cli.png)\r\n\r\n### \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\r\n\r\nCLI \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u043e\u0439 TTSave. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043e\u0434\u043d\u0443 \u0438\u0437 \u043a\u043e\u043c\u0430\u043d\u0434 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438, \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0445 \u0432\u044b\u0448\u0435.\r\n\r\n### \u041f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f CLI\r\n\r\n```bash\r\n# \u0417\u0430\u043f\u0443\u0441\u043a CLI\r\nttsave\r\n\r\n# \u0421\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435 \u0432\u0438\u0434\u0435\u043e \u043f\u043e URL\r\nttsave download <TikTok URL> <download_dir> --debug\r\n\r\n# \u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0435\u0440\u0441\u0438\u044e\r\nttsave version\r\n\r\n# \u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0441\u043f\u0440\u0430\u0432\u043a\u0443\r\nttsave help\r\n```\r\n\r\n### \u041a\u043e\u043c\u0430\u043d\u0434\u044b CLI\r\n\r\n- `download <url> <download_dir> --debug`: \u0421\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435 \u0432\u0438\u0434\u0435\u043e \u0438\u043b\u0438 \u0444\u043e\u0442\u043e \u0438\u0437 TikTok \u043f\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u043c\u0443 URL. \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 `download_dir` \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c, \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0442\u0435\u043a\u0443\u0449\u0430\u044f \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f. \u041e\u043f\u0446\u0438\u044f `--debug` \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0440\u0435\u0436\u0438\u043c \u043e\u0442\u043b\u0430\u0434\u043a\u0438.\r\n- `version`: \u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0432\u0435\u0440\u0441\u0438\u0438 TTSave CLI.\r\n- `help`: \u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b.\r\n\r\n### FAQ\r\n\r\n- ### \u041d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \r\n \u041f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u0434\u043e\u0436\u0434\u0438\u0442\u0435 \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u043f\u043e\u0437\u0436\u0435. \r\n\r\n \u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u043b\u043e, \u043f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043d\u0438\u0436\u0435:\r\n\r\n \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0432\u0441\u0435 \u0434\u0435\u043b\u0430\u0435\u0442\u0435 \u043f\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438. \r\n\r\n \u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u043b\u043e, \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 issue \u043d\u0430 [GitHub](https://github.com/FlacSy/ttsave/issues).\r\n \r\n- ### \u041d\u0435 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0444\u043e\u0442\u043e \u0438\u043b\u0438 \u043d\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0434\u0440\u0443\u0433\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f. \r\n \r\n \u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 TTSave \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 DEBUG.\r\n\r\n \u0415\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 CLI, \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 `--debug`.\r\n \u0415\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u043a\u043b\u0430\u0441\u0441 TTSave, \u0442\u043e \u043f\u0440\u0438 \u0435\u0433\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 `debug_mode=True`.\r\n\r\n \u0415\u0441\u043b\u0438 \u0432\u044b \u0432\u0438\u0434\u0438\u0442\u0435 \u043a\u0430\u043f\u0447\u0443 \u0432 \u043e\u043a\u043d\u0435 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430, \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0444\u0438\u043b\u044c \u0432\u0430\u0448\u0435\u0433\u043e \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430.\r\n\r\n 1. **Chrome \u0431\u0440\u0430\u0443\u0437\u0435\u0440:**\r\n ```python\r\n from selenium import webdriver\r\n from ttsave import TTSave\r\n\r\n profile_path = 'C:/Users/<\u0412\u0430\u0448\u0435_\u0418\u043c\u044f>/AppData/Local/Google/Chrome/User Data/Default'\r\n\r\n options = webdriver.ChromeOptions()\r\n options.add_argument(f'user-data-dir={profile_path}')\r\n\r\n downloader = TTSave(\r\n options=options,\r\n driver_class=webdriver.Chrome,\r\n debug_mode=True\r\n ...\r\n )\r\n ``` \r\n \u0415\u0449\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u044c\u0441\u044f \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043e\u043f\u0446\u0438\u0438 \u0434\u043b\u044f \u0441\u043a\u0440\u044b\u0442\u0438\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043e\u0433\u043e \u041f\u041e. \u041f\u0440\u0438\u043c\u0435\u0440:\r\n ```python\r\n ...\r\n options = webdriver.ChromeOptions()\r\n\r\n options.add_argument(\"--disable-blink-features=AutomationControlled\")\r\n options.add_experimental_option(\"excludeSwitches\", [\"enable-automation\"])\r\n options.add_experimental_option('useAutomationExtension', False)\r\n ```\r\n 2. **Firefox \u0431\u0440\u0430\u0443\u0437\u0435\u0440:**\r\n ```python\r\n from selenium import webdriver\r\n from ttsave import TTSave\r\n\r\n profile_path = 'C:/Users/<\u0412\u0430\u0448\u0435_\u0418\u043c\u044f>/AppData/Roaming/Mozilla/Firefox/Profiles'\r\n\r\n options = webdriver.FirefoxOptions()\r\n options.set_preference('profile', profile_path)\r\n\r\n downloader = TTSave(\r\n options=options,\r\n driver_class=webdriver.Firefox,\r\n debug_mode=True\r\n ...\r\n )\r\n ``` \r\n \u0415\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 CLI, \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0444\u043b\u0430\u0433 `--profile`, \u0443\u043a\u0430\u0437\u0430\u0432 \u043f\u0443\u0442\u044c \u043a \u0432\u0430\u0448\u0435\u043c\u0443 **Chrome** \u043f\u0440\u043e\u0444\u0438\u043b\u044e:\r\n ```bash\r\n ttsave download https://vm.tiktok.com/qwerty --debug --profile \"C:/Users/<\u0412\u0430\u0448\u0435_\u0418\u043c\u044f>/AppData/Local/Google/Chrome/User Data/Default\"\r\n ```\r\n\r\n## \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0432\u043e\u0437\u043d\u0438\u043a\u043b\u0438 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0438\u043b\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 issue \u043d\u0430 [GitHub](https://github.com/FlacSy/ttsave/issues).\r\n",
"bugtrack_url": null,
"license": "Apache",
"summary": "A simple tool to save TikTok videos",
"version": "1.3.5",
"project_urls": {
"Homepage": "https://github.com/FlacSy/ttsave"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "74092b12a81a12b4e5d29e44cc603dca20a873365259bde2a72ff4a935e1466f",
"md5": "57d11174dea7375ea78bc05a40714c9b",
"sha256": "5cd36b388540e3bb68ca2dcce52953fa3e3b6ee57177845ca1bcbd3fb499da2a"
},
"downloads": -1,
"filename": "ttsave-1.3.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "57d11174dea7375ea78bc05a40714c9b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 15436,
"upload_time": "2024-09-05T23:45:19",
"upload_time_iso_8601": "2024-09-05T23:45:19.510717Z",
"url": "https://files.pythonhosted.org/packages/74/09/2b12a81a12b4e5d29e44cc603dca20a873365259bde2a72ff4a935e1466f/ttsave-1.3.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "976562588b10a0a2322b055d9db3ae2a1d507760c3fc1e4ce8ccee01674a7355",
"md5": "65f51557938aebc5ff02307b84a98a29",
"sha256": "ab5649d1cd4dfbcbdc8cf8e9a8e74d86a4828dfa10a08782f2791f2dea99b16c"
},
"downloads": -1,
"filename": "ttsave-1.3.5.tar.gz",
"has_sig": false,
"md5_digest": "65f51557938aebc5ff02307b84a98a29",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 15466,
"upload_time": "2024-09-05T23:45:20",
"upload_time_iso_8601": "2024-09-05T23:45:20.808091Z",
"url": "https://files.pythonhosted.org/packages/97/65/62588b10a0a2322b055d9db3ae2a1d507760c3fc1e4ce8ccee01674a7355/ttsave-1.3.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-05 23:45:20",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "FlacSy",
"github_project": "ttsave",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "ttsave"
}