Беспланный опыт поисковой системы RSS с оттенком машинного обучения.
SQL -дамп базы данных с более чем 3 миллионами записей, извлеченных за год, можно загрузить по адресу https://davidesantangelo.gumroad.com/l/nkyymb
Dato.rss находится в бета -версии и, вероятно, увидит много изменений в ближайшем будущем.
Если у вас есть комментарии или предложения, отправьте их нам, используя вкладку «Проблемы».
Спасибо, что попробовали бета!
Поисковая система: быстро ищите миллионы доступных RSS -каналов.
RESTFUL API: превращает данные о подаче в потрясающий API. API упрощает то, как вы обрабатываете RSS, атом или JSON Feeds. Вы можете добавить и отслеживать свои любимые данные о подаче кормов с помощью простого, быстрого и чистого API REST. Все записи обогащены машинным обучением и семантическими двигателями.
curl ' https://<yourhost>/api/searches?q=news ' | json_pp
{
" data " : [
{
" id " : " 86b0f829-e300-4eef-82e1-82f34d03aff6 " ,
" type " : " entry " ,
" attributes " : {
" title " : " " Pandemic, Infodemic " : 2 Cartoon Characters Battling Fake News In Assam " ,
" url " : " https://www.ndtv.com/india-news/coronavirus-pandemic-infodemic-2-cartoon-characters-battling-fake-news-in-assam-2222333 " ,
" published_at " : 1588448805,
" body " : " An English daily in Assam's Guwahati has been publishing a cartoon strip to tackle the fake news related to the coronavirus pandemic. The two central characters- " Pandemic and Infodemic " - are being...<img src= " http://feeds.feedburner.com/~r/NDTV-LatestNews/~4/lEmH201Q8jI " height= " 1 " width= " 1 " alt= "" /> " ,
" text " : " An English daily in Assam's Guwahati has been publishing a cartoon strip to tackle the fake news related to the coronavirus pandemic. The two central characters- " Pandemic and Infodemic " - are being... " ,
" categories " : [
" all india "
],
" sentiment " : null,
" parent " : {
" id " : " c97bdae6-b5d1-4966-b9f3-615e29d4d47d " ,
" title " : " NDTV News - Special " ,
" url " : " feed:http://feeds.feedburner.com/NDTV-LatestNews " ,
" rank " : 99
},
" tags " : []
},
" relationships " : {
" feed " : {
" data " : {
" id " : " c97bdae6-b5d1-4966-b9f3-615e29d4d47d " ,
" type " : " feed "
}
}
}
},
]
}
Поиск только реализован с помощью полного текстового поиска Postgres.
Я использовал драгоценный камень pg_search , который можно использовать двумя способами:
Multi Search: Поиск по нескольким моделям и верните один массив результатов. Представьте, что у вас есть три модели: продукт, бренд и обзор. Используя несколько поисков, мы могли бы искать все из них одновременно, увидев один набор результатов поиска. Это было бы идеально для добавления федеративных функций поиска в ваше приложение.
Область поиска: Поиск в пределах одной модели, но с большей гибкостью.
execute << - SQL
ALTER TABLE entries
ADD COLUMN searchable tsvector GENERATED ALWAYS AS (
setweight(to_tsvector( ' simple ' , coalesce(title, ' ' )), ' A ' ) ||
setweight(to_tsvector( ' simple ' , coalesce(body, ' ' )), ' B ' ) ||
setweight(to_tsvector( ' simple ' , coalesce(url, ' ' )), ' C ' )
) STORED;
SQLРанжирование подачи предоставляется OpenRank бесплатный метрика авторитета корневого домена на основе общего поискового набора данных PageRank. Значение нормально
( ( Math . log10 ( domain_rank ) / Math . log10 ( 100 ) ) * 100 ) . round Машинное обучение предоставляется Semantic Text Analytics API Dandelion API в качестве услуги, от текста до действенных данных. Извлеките значение из неструктурированного текста и поместите его в контекст с помощью простого API.
Вы можете добавить столько каналов, сколько хотите, чтобы автоматический хрупп обработал.
https: /// Feeds/new
Вся документация API находится в разделе Wiki. Конечно, не стесняйтесь сделать это лучше.
https://github.com/davidesantangelo/dato.rss/wiki
Чтобы использовать некоторые функции, такие как добавление нового канала, вам нужен токен с разрешением на запись . В настоящее время только я могу включить это. В случае, если свяжитесь со мной
Плюс много рубиновых драгоценных камней, полный список которых находится в /Main /Gemfile.
Если вы хотите поддержать меня в затратах на сервер, чтобы сохранить дату. Спасибо!
Спонсор GitHub
Отчеты об ошибках и запросы на тягу приветствуются на GitHub по адресу https://github.com/davidesantangelo/dato.rss. Этот проект предназначен для безопасного, гостеприимного пространства для сотрудничества, и ожидается, что участники будут придерживаться Кодекса поведения завета участника.
Драгоценный камень доступен в качестве открытого исходного кода в соответствии с условиями лицензии MIT.