depth-crawler-python三級(jí)頁(yè)面定向爬取
depth-crawler 是一個(gè)三級(jí)頁(yè)面定向爬取工具。
功能
1.在python中運(yùn)用scrapy框架定向爬取至三級(jí)頁(yè)面,保存html頁(yè)面內(nèi)容與鏈接為xlsx表格
2.將xlsx表格內(nèi)容存至elasticsearch中
3.elasticsearch查詢(xún)的時(shí)候運(yùn)用ik分詞
4.在python中運(yùn)用flask框架寫(xiě)前端頁(yè)面呈現(xiàn)搜索頁(yè)面和搜索的信息內(nèi)容
5.查詢(xún)結(jié)果高亮顯示
安裝說(shuō)明
首先安裝python用于編輯代碼,然后安裝jdk環(huán)境用于后續(xù)安裝elasticsearch,elasticsearch數(shù)據(jù)庫(kù)對(duì)爬取下來(lái)的數(shù)據(jù)進(jìn)行處理。npm 是隨同 node.js 一起安裝的包管理工具,用于node.js插件管理(包括安裝、卸載、管理依賴(lài)等),elasticsearch-head是elasticsearch用于監(jiān)控 Elasticsearch 狀態(tài)的客戶(hù)端插件,包括數(shù)據(jù)可視化、執(zhí)行增刪改查操作等,使用JavaScript開(kāi)發(fā)的依賴(lài)于Node.js
1.python(3.8.10)打開(kāi)cmd輸入python,有版本號(hào)說(shuō)明安裝成功
2.jdk(1.8.0_241)注意環(huán)境變量的配置,打開(kāi)cmd輸入java -version,有版本號(hào)說(shuō)明安裝成
3.elasticsearch(6.8.21)找到elasticsearch.bat啟動(dòng)成功后,在瀏覽器中輸入(localhost:9200)出現(xiàn)如圖便安裝成
3.1.nodejs(v16.17.0)找到elasticsearch.bat啟動(dòng)成功后,在瀏覽器中輸入(localhost:9200)出現(xiàn)如圖便安裝成功
3.2.elasticsearch-head(6.8.21)與elasticsearch版本一致(head插件的安裝和基本使用)通過(guò)elasticsearch-head-master打開(kāi)命令行,輸入(grunt server)
4.擴(kuò)展庫(kù)部分 ——pip install 庫(kù)名==版本號(hào) (可以在cmd中輸入pip list 查看所有的版本號(hào))
4.1.flask(2.1.2)——使用 Python用于編寫(xiě)web應(yīng)用的框架
在cmd中輸入(pip install flask),指定版本號(hào)的話輸入(pip install flask==2.1.2)
4.2.scrapy(2.6.1)——用于爬取網(wǎng)站數(shù)據(jù)、提取結(jié)構(gòu)性數(shù)據(jù)
4.3.elasticsearch(7.15.2)——用于搜索信息
4.4.pandas(1.4.1)——用于處理表格數(shù)據(jù)
4.5.openpyxl(3.0.9)——可用于讀寫(xiě)excel表格
4.6.XlsxWriter(3.0.3)——用于創(chuàng)建Excel XLSX文件
啟動(dòng)流程
elasticsearch:
1.在"elasticsearch"的文件夾下打開(kāi)“bin文件夾然后雙擊"elasticsearch.bat"開(kāi)始運(yùn)行
2.在"elasticsearch"的文件夾下打開(kāi)“head"文件夾下的"elasticsearch-head-master"復(fù)制路徑(D:\\ES\\elasticsearch-6.8.21\\head\\elasticsearch-head-master)打開(kāi)cmd進(jìn)入路徑下輸入命令(grunt server)
效果瀏覽
elasticsearch:
1.打開(kāi)瀏覽器輸入(http://localhost:9200/)訪問(wèn)端口
2.打開(kāi)瀏覽器輸入(http://localhost:9100/)可看到elasticsearch數(shù)據(jù)庫(kù)中信息
前端 :
1.運(yùn)行(route.py)在瀏覽器中訪問(wèn)第一個(gè)路由(http://127.0.0.1:5000/search)可看到搜索頁(yè)面
2.在搜索框中輸入搜索內(nèi)容(如:紡織)可出現(xiàn)相關(guān)信息,在最后也有分頁(yè)效果
3.點(diǎn)擊標(biāo)題和內(nèi)容部分會(huì)返回原網(wǎng)址
4.點(diǎn)擊快照會(huì)進(jìn)去html頁(yè)面
5.每條內(nèi)容回根據(jù)點(diǎn)擊次數(shù)提高排名,在瀏覽器中輸入(http://127.0.0.1:5000/restore)排名恢復(fù)原樣
