摘要:提供個人博客文章搜索服務(wù)只需要配置個人博客地址載入博客數(shù)據(jù)開啟服務(wù)即可開啟文章搜索服務(wù)。對配置文件監(jiān)控修改后服務(wù)及時地更新博客數(shù)據(jù)。
Search-Spider-Blog
提供個人博客文章搜索服務(wù), 只需要配置個人博客地址, 載入博客數(shù)據(jù), 開啟Server服務(wù), 即可開啟文章搜索服務(wù)。
對blogconfig.json配置文件監(jiān)控, 修改后服務(wù)及時地更新博客數(shù)據(jù)。
本人用的為Hexo Blog, 所以Hexo用戶體驗更佳
代碼地址
使用說明
環(huán)境配置
# after clone && cd npm i
對 blogconfig.json 進行配置(以我個人博客為例)
{ "url": "http://moyuyc.github.io/", //blog url "mainPagePath": "/archives/", // 所有文章頁面(也就是第一頁) "spiderConfig": { "ArticleLinkEl": ".post-title-link", // 在"mainPagePath"中進入文章頁面的超鏈接jQuery選擇器 "splitPagePath": "/archives/page/${page}/", // 所有文章分頁的規(guī)則, ${page}表示頁碼 "ArticleDateEl": "time", // 在文章頁面中日期的Jquery選擇器 "ArticleTitleEl": ".post-title", // 在文章頁面中標題的Jquery選擇器 "ArticleContentEl": ".post-body" // 在文章頁面中內(nèi)容的Jquery選擇器 } }
腳本指令說明
npm start # 開啟Server服務(wù)(默認端口7899, 可在scripts中修改), 開啟后會自動更新一次數(shù)據(jù) npm load # 更新博客數(shù)據(jù)
Server接口說明
/load : 重新加載博客數(shù)據(jù)
/api/search/(:type) : type可選值為date/content/title/all, 根據(jù)什么來搜索, 參數(shù)格式為?q=想搜什么&n=數(shù)目(可選)
/api/search/all : 當(dāng)未傳q時, 返回所有文章
2 3點中的返回數(shù)據(jù)說明 :
{ type: "title/date/content", articles: [ // 一般length為1 { title: "title", date: "date", content: "content", path: "/url" // 文章鏈接地址 相對的 } ], indexs: [] // 搜索到內(nèi)容的索引位置 }
注意: 提供了多關(guān)鍵詞的搜索, 如keyword1+keyword2 或者 keyword1 keyword2
可以根據(jù)自己的需求, 直接使用 /api/search/all 所有數(shù)據(jù)做為靜態(tài)數(shù)據(jù)進行本地搜索, 或者使用search服務(wù)都可
工作流程爬取博客文章數(shù)據(jù), 保存至db.json中, 未使用數(shù)據(jù)庫, 是為了輕量與方便移植, 而且只是提供個人服務(wù)
為了更好的拓展性, 使用cheerio, 使用jQuery選擇器 配置即可
獲取數(shù)據(jù)后, 便是搭建http服務(wù), 提供搜索接口, 為了方便用戶展示, 還提供了搜索到內(nèi)容的索引位置
效果查看文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/90897.html
摘要:現(xiàn)在開始創(chuàng)建一個包并分發(fā)給其他人使用,并確保遵循你迄今為止學(xué)到的標準和最佳實踐。第步實踐對于練習(xí),繼續(xù)編寫單元測試,以完成目前為止所做的實際任務(wù),特別是你在步驟中所做的練習(xí)。 今天的Web開發(fā)與幾年前完全不同,有很多不同的東西可以很容易地阻止任何人進入Web開發(fā)。這是我們決定制作這些循序漸進的視覺指南的原因之一,這些指南展示了更大的圖景,并讓任何人清楚了解他們在網(wǎng)頁開發(fā)中扮演的角色。 ...
摘要:下載并安裝目前的最新穩(wěn)定版為,如果之后版本有升級,請將相應(yīng)的版本號替換掉上面的。在實現(xiàn)的過程中,貌似對中文的支持不是那么好,所以接下來會嘗試使用一下中文分詞器來看看效果,順利的話會再出一篇文章。 原文來自:https://jellybool.com/post/setup-slasticsearch-on-your-website 在我的博客按Shift+S就可以呼出搜索框,可...
摘要:所以我已經(jīng)將服務(wù)遷移至上,有興趣的同學(xué)請移步最新的一篇博文博客訪問量統(tǒng)計工具查看最新版本的使用方法。但是針對博客的訪問量統(tǒng)計,卻沒有什么可用的工具。 本文最初發(fā)布于我的個人博客:咀嚼之味 2016.04.23 通告: Hit Kounter 原本部署于 SAE 上,而近期 SAE 針對使用 MySQL 的應(yīng)用開始收費。本項目只是一個本人使用業(yè)余時間開發(fā)的小工具;它本身包含的功能也很精...
閱讀 2580·2021-09-27 13:36
閱讀 2221·2019-08-29 18:47
閱讀 2201·2019-08-29 15:21
閱讀 1484·2019-08-29 11:14
閱讀 2042·2019-08-28 18:29
閱讀 1689·2019-08-28 18:04
閱讀 630·2019-08-26 13:58
閱讀 3278·2019-08-26 12:12