{"id":27120912,"url":"https://github.com/dextiles/files-auto-synchronizer","last_synced_at":"2025-04-07T10:40:19.444Z","repository":{"id":239340979,"uuid":"799195745","full_name":"Dextiles/Files-Auto-Synchronizer","owner":"Dextiles","description":"The service for automatically synchronizing a specified directory on the machine with the cloud storage","archived":false,"fork":false,"pushed_at":"2025-03-20T00:20:22.000Z","size":95,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-20T01:26:23.567Z","etag":null,"topics":["cloud-synchronization","dropbox","google-cloud","icloud-drive","outlook","python","synchronization","yandex-cloud"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Dextiles.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-11T12:30:56.000Z","updated_at":"2025-03-20T00:23:47.000Z","dependencies_parsed_at":"2025-03-20T03:45:32.579Z","dependency_job_id":null,"html_url":"https://github.com/Dextiles/Files-Auto-Synchronizer","commit_stats":null,"previous_names":["dextiles/files-auto-synchronizer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dextiles%2FFiles-Auto-Synchronizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dextiles%2FFiles-Auto-Synchronizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dextiles%2FFiles-Auto-Synchronizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dextiles%2FFiles-Auto-Synchronizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Dextiles","download_url":"https://codeload.github.com/Dextiles/Files-Auto-Synchronizer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247640290,"owners_count":20971549,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloud-synchronization","dropbox","google-cloud","icloud-drive","outlook","python","synchronization","yandex-cloud"],"created_at":"2025-04-07T10:40:14.150Z","updated_at":"2025-04-07T10:40:19.429Z","avatar_url":"https://github.com/Dextiles.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Сервис автоматической синхронизации файлов\n### Описание\n1)\tСвязывание указанной папки на локальном компьютере и в облачном хранилище\n2)\tОтслеживание изменений в файлах на локальном компьютере и внесение изменений в облачном хранилище\n\n### Развертывание и использование\n1)  Скопировать репозиторий\n    ```\n    $ git clone https://github.com/Dextiles/Files-Auto-Synchronizer\n    ```\n2)  Установить необходимые зависимости\n    ```\n    $ pip install -r requirements.txt\n    ```\n3)  Создать файл \u003ccode\u003econfig.ini\u003c/code\u003e и настроить его ([подробнее](#настройка))\n4)  Запустить исполняемый файл\n    ```\n    $ python3 main.py\n    ```\n5)  Для остановки скрипта необходимо нажать \u003ccode\u003eEnter\u003c/code\u003e в терминале рабочего скрипта\n6)  Логи можно посмотреть в папке \u003ccode\u003elogs/\u003c/code\u003e корневого раздела проекта ([подробнее](#логирование))\n\n### Настройка\n\nДля использования сервиса необходимо провести его первичную настройку, \nдля этого необходимо создать файл \u003ccode\u003econfig.ini\u003c/code\u003e\u003cbr\u003e\n1. Инициализировать 2 заголовка: \u003ccode\u003e[SERVICE]\u003c/code\u003e и \u003ccode\u003e[PARAMS]\u003c/code\u003e\n2. В \u003ccode\u003e[SERVICE]\u003c/code\u003e необходимо создать 2 параметра:\n   + \u003ccode\u003eservice_token\u003c/code\u003e - содержит рабочий токен облачного сервиса\n   + \u003ccode\u003eservice_type\u003c/code\u003e - указание типа облачного сервиса\n3. В \u003ccode\u003e[PARAMS]\u003c/code\u003e необходимо создать 3 параметра:\n   + \u003ccode\u003elocal_folder\u003c/code\u003e - полный путь к отслеживаемой папке\n   + \u003ccode\u003eservice_folder\u003c/code\u003e - название папки в облачном хранилище, где будут храниться файлы\n   + \u003ccode\u003esync_interval\u003c/code\u003e - интервал обновления\n\n\u003cdetails\u003e\n  \u003csummary\u003eПример \u003ccode\u003econfig.ini\u003c/code\u003e файла\u003c/summary\u003e\n  \u003cfigure\u003e\n    \u003cimg src=\"readme_data/config-file-view.png\" alt=\"Пример config.ini файла\"\u003e\n    \u003cfigcaption\u003eПример config.ini файла\u003c/figcaption\u003e\n  \u003c/figure\u003e\n\u003c/details\u003e\n\n\u003e В случае отсутствия \u003ccode\u003econfig.ini\u003c/code\u003e файла или его неправильной настройки программа не запуститься\n\n\u003ctable\u003e\n  \u003ccaption\u003eДоступные облачные сервисы\u003c/caption\u003e\n  \u003cthead\u003e\n    \u003ctr align=\"center\"\u003e\n      \u003ctd\u003e№\u003c/td\u003e\n      \u003ctd\u003eНазвание\u003c/td\u003e\n      \u003ctd\u003eСылка\u003c/td\u003e\n      \u003ctd\u003eНазвание для \u003ccode\u003econfig.ini\u003c/code\u003e\u003c/td\u003e\n      \u003ctd\u003eСтатус\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/thead\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e1\u003c/td\u003e\n      \u003ctd\u003eЯндекс.Диск\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://disk.yandex.ru/\"\u003edisk.yandex.ru\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\u003csamp\u003eYandexDrive\u003c/samp\u003e\u003c/td\u003e\n      \u003ctd align=\"left\"\u003e\u0026#10004; Внедрен\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e2\u003c/td\u003e\n      \u003ctd\u003eGoogle Drive\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://www.google.ru/drive/\"\u003ewww.google.ru/drive\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\u003csamp\u003eGoogleDrive\u003c/samp\u003e\u003c/td\u003e\n      \u003ctd align=\"left\"\u003e\u0026#10006; В разработке\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e3\u003c/td\u003e\n      \u003ctd\u003eDropbox\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://www.dropbox.com/\"\u003ewww.dropbox.com\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\u003csamp\u003eDropbox\u003c/samp\u003e\u003c/td\u003e\n      \u003ctd align=\"left\"\u003e\u0026#10006; В разработке\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e4\u003c/td\u003e\n      \u003ctd\u003eiCloud\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://www.icloud.com/\"\u003ewww.icloud.com\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\u003csamp\u003eiCloud\u003c/samp\u003e\u003c/td\u003e\n      \u003ctd align=\"left\"\u003e\u0026#10006; В разработке\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e5\u003c/td\u003e\n      \u003ctd\u003eOneDrive\u003c/td\u003e\n      \u003ctd\u003e\u003ca href=\"https://onedrive.live.com/?wdo=1\u0026id=root\"\u003eonedrive.live.com\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\u003csamp\u003eOneDrive\u003c/samp\u003e\u003c/td\u003e\n      \u003ctd align=\"left\"\u003e\u0026#10006; В разработке\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n### Логирование\n\nДля отслеживания всех процессов, происходящих в сервисе предусмотрено логирование\u003cbr\u003e\nВ логах создано 2 уровня:\u003cbr\u003e\n\u003ccode\u003eINFO\u003c/code\u003e - для отображения процессов работы с облачным хранилищем\u003cbr\u003e\n\u003ccode\u003eERROR\u003c/code\u003e - для отображения всех отловленных ошибок\n\nЛог-файл располагается в корневой директории проекта в папке \u003ccode\u003e/logs/\u003c/code\u003e\u003cbr\u003e\nПолный путь (относительно проекта) для него будет таким:\u003cbr\u003e\n\u003ccode\u003e/logs/logs.log\u003c/code\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eПример \u003ccode\u003elogs.log\u003c/code\u003e файла\u003c/summary\u003e\n  \u003cfigure\u003e\n    \u003cimg src=\"readme_data/logs-view.png\" alt=\"Пример config.ini файла\"\u003e\n    \u003cfigcaption\u003eПример лог файла\u003c/figcaption\u003e\n  \u003c/figure\u003e\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdextiles%2Ffiles-auto-synchronizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdextiles%2Ffiles-auto-synchronizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdextiles%2Ffiles-auto-synchronizer/lists"}