Skip to content

pasynkov/feed-fetcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Feed Fetcher

Простейший фетчер новостей из RSS/ATOM лент

Для установки необходимо сделать следущее

git clone https://github.com/pasynkov/feed-fetcher.git

Затем необходимо создать конфиг приложения:

в ./config/config.sample.json находится пример конфига, его можно переименовать в config.json, или скопировать, но config.json должен присутствовать в проекте.

##Описание конфига

webServer - раздел веб-сервера

webServer.port - порт прослушивания веб-сервера

mysql - раздел конфигурации БД (необзятельно, в случае отсутствия подключения будет хранить данные в статике)

mysql.host - хост БД

mysql.port - порт

mysql.user - имя пользователя

mysql.password - пароль

mysql.database - база данных (приложение самостоятельно создаст таблицу в случае ее отсутствия)

fetcher - раздел фетчинга

fetcher.staticDir - папка для сохранения статики (если нет подключения к БД)

fetcher.feeds - массив фетчеров

fetcher.feeds.$.name - имя фетчера

fetcher.feeds.$.link - ссылка на ленту

fetcher.feeds.$.fetcher - (необязательно) если указано в качестве фетчера будет использовал этот класс приложения (./fetchers/some_fetcher.coffee)

cron - раздел планировщика заданий (массив)

cron.$.runOn - время выполнения задания (формат * * * * * * )

cron.$.script - скрипт для этого задания

ui - фроентенд-раздел приложения

ui.perPage - кол-во записей на страницу

##Что делает feed-fetcher Изначально feed-fetcher парсит новости из RSS-ленты по заданию планировщика, кладет в базу и предоставляет наипростейший веб-интерфейс для их чтения. Но фактически это мини-фрейморк, и в его рамках возможностей может быть больше.

##Доп. возможности Можно добавлять и другие обработчики RSS-лент, достаточно добавить его в конфиг и написать класс-обработчик на подобие DefaultFetcher (но совсем не обязательно, стандартный фетчер может попробовать справиться с этим), и вуаля!

##Демонизация В проекте присутствует настроенный конфиг для запуска приложения через pm2 (./config/pm2.json), поэтому достаточно просто создать папку logs (для сбора логов приложения, для *UNIX - mkdir logs) и совершить команду через консоль pm2 start config/pm2.json и приложение начнет работать.

About

Fetch news from feeds (RSS, Atom)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published