머신 러닝의 힌트를 통한 원활한 RSS 검색 엔진 경험.
1 년이 넘는 3 백만 개 이상의 항목이있는 데이터베이스의 SQL 덤프는 https://davidesantangelo.gumroad.com/l/nkyymb에서 다운로드 할 수 있습니다.
Dato.RSS는 베타에 있으며 가까운 시일 내에 많은 변화가있을 것입니다.
의견이나 제안이 있으면 문제 탭을 사용하여 당사에 보내주십시오.
베타를 시도해 주셔서 감사합니다!
검색 엔진 : 수백만 개의 사용 가능한 RSS 피드를 빠르게 검색하십시오.
RESTFUL API : 피드 데이터를 멋진 API로 바꿉니다. API는 RSS, Atom 또는 JSON 피드를 처리하는 방법을 단순화합니다. 간단하고 빠르고 깨끗한 휴식 API로 좋아하는 피드 데이터를 추가하고 추적 할 수 있습니다. 모든 항목에는 기계 학습 및 시맨틱 엔진이 풍부합니다.
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 "
}
}
}
},
]
}
검색은 전체 텍스트 검색 우편 게시 기능으로 구현됩니다.
PG_SEARCH GEM을 사용했는데,이 두 가지 방법으로 사용할 수 있습니다.
멀티 검색 : 여러 모델에서 검색하고 단일 배열의 결과를 반환합니다. 제품, 브랜드 및 검토의 세 가지 모델을 상상해보십시오. 멀티 검색을 사용하여 동시에 검색 결과를 검색하여 단일 검색 결과를 볼 수 있습니다. 이것은 연합 검색 기능을 앱에 추가하는 데 적합합니다.
검색 범위 : 단일 모델 내에서 검색하지만 유연성이 높습니다.
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 머신 러닝은 텍스트에서 실행 가능한 데이터에 이르기까지 민들레 API 시맨틱 텍스트 분석에 의해 제공됩니다. 구조화되지 않은 텍스트에서 의미를 추출하여 간단한 API와 함께 컨텍스트에 넣습니다.
자동 크롤러가 처리하기 위해 원하는만큼 많은 피드를 추가 할 수 있습니다.
https : /// feeds/new
모든 API 문서는 위키 섹션에 있습니다. 물론 자유롭게 만들 수 있습니다.
https://github.com/davidesantangelo/dato.rss/wiki
새 피드 추가와 같은 일부 기능을 사용하려면 쓰기 권한이있는 토큰이 필요합니다. 현재 만 사용 할 수 있습니다. 저에게 연락 할 경우
또한 많은 루비 보석, 전체 목록이 /main /gemfile입니다.
Dato.ess를 무료로 유지하기 위해 서버 비용으로 저를 지원하려면 후원을 고려하십시오! 감사해요!
Github 스폰서
https://github.com/davidesantangelo/dato.rss (https://github.com/davidesantangelo/dato.rss)에서 버그 보고서 및 풀 요청은 환영합니다. 이 프로젝트는 협력을위한 안전하고 환영하는 공간이되기위한 것이며, 기고자들은 기고자 계약 규범을 준수 할 것으로 예상됩니다.
보석은 MIT 라이센스의 조건에 따라 오픈 소스로 제공됩니다.