Skip to content

hadji-developer/getrss

Repository files navigation

Версия 2.1.1
Автор - hadji-developer.
Контакты разработчика:
телеграм  - @hadji_developer;
скайп - Hadji Developer.

----------ИЗМЕНЕНИЯ------------------------
Эта версия несовместима с версией 1.0.0.
Базу данных надо создавать заново.
Команды и пользовательский интерфейс остались те же.
-------------------------------------------

Для программистов, сведущих в sql, php, linux, русском языке.

GETRSS - приложение для парсинга rss-каналов и добавления полученных новостей в базу данных типа mysql.
RSS-канал должен соответствовать спецификации RSS 2.0 Specification
(подробно - https://validator.w3.org/feed/docs/rss2.html или https://www.rssboard.org/rss-specification )

Приложение тестировалось на:
    операционная система - linux debian 10.9;
    база данных - mariadb 10.3.27;
    php - версия 7.3.

Здесь и в дальнейшем подразумевается, что используется операционная система linux debian 10. 
На других дистрибутивах linux данное приложение должно работать, однако это не факт.

Так как приложение консольное, php-интерпретатор должен иметь соответствующую поддержку
(подробно - https://www.php.net/manual/ru/features.commandline.php).

Для работы приложения требуется пакет php-curl и pdo_mysql.

---------БАЗА ДАННЫХ------------------------
В папке mysql_dump приведен шаблон базы данных template.sql.
Там вы можете внести любые разумные изменения, кроме таблиц - таблицы редактировать нельзя.
Далее, в папке configs вы должны скопировать файл db_template.php в файл db.php
и в файле db.php внести соответствующие изменения.
БД тестировалась на mariadb 10.3.27 и возможно будет работать без ошибок на mysql 8.

----------ЗАПУСК----------------------------
Так как я против того, чтобы приложения запрашивали root-права, вам придется самим установить символьную ссылку
    $ ln -s "полный путь, куда вы клонировали или загрузили приложение/entry_point/getrss.php" /usr/local/bin/getrss
Проверьте в терминале
    $ getrss
Если вышла справка, значит пока все идет хорошо.
В этой же справке можно получить подробную информацию по использованию приложения.

Примеры команд:
    $ getrss --add https://somesite.somedomain//somersschannel  somesite - добавили канал
    $ getrss --remove somesite - удалили канал
    $ getrss --last somesite 10 - вывели 10 последних новостей канала somesite

Подробности можно узнать, набрав
    $ getrss --help
    

---------CRON-------------------------------

Для периодического запуска через cron введите команду
    $ crontab -e
И в редакторе введите следующую строку
    */30 * * * * getrss --get rsschannel_alias
После сохранения каждые полчаса база данных будет пополняться новостями от rss-канала
rsschannel_alias (псевдоним rss-канала)

Подробно о том, как пользоваться cron - https://ru.wikipedia.org/wiki/Cron