999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Scrapy的崗位推薦系統的設計與實現

2023-05-06 17:59:49曹培林永意
無線互聯科技 2023年24期

曹培 林永意

摘要:大數據和人工智能的發展,使得網絡上的信息呈爆炸式增長。如何從海量數據中迅速精準地挖掘出有效信息已經成為一個研究熱點。文章以爬蟲框架Scarpy為基礎,結合Redis、布隆過濾器(Bloom Filter,BF)和PostgreSQL數據庫,設計并實現了一種基于Scrapy的崗位推薦系統。該系統可以從指定的URL獲取信息,存入數據庫,并以網頁或者郵件的形式呈現給用戶。

關鍵詞:崗位推薦系統;布隆過濾器;Scarpy;PostgreSQL

中圖分類號:TP311? 文獻標志碼:A

0 引言

近年來,科學技術正發生著日新月異的變化,互聯網已經成為人們獲取信息的主要渠道[1]。在大數據時代,搜索引擎作為一種常見的互聯網應用,已經成為人類與互聯網海量信息的連接橋梁。網絡爬蟲(Web Spider)是一種可以自動提取網頁數據的程序[2],可以幫助搜索引擎從互聯網上下載頁面信息,是搜索引擎的一個重要組成部分。

1 相關技術綜述

1.1 Scrapy爬蟲框架

Scrapy是一個基于Python的可爬取網站數據,并提取結構化數據的應用框架,其工作原理如圖1所示。

各組件的職能如下[3-4]。

Scrapy Engine(引擎):負責Scheduler、ItemPileline、Spiders以及Downloader 4個組件之間的通信和數據傳輸,是整個爬蟲的中樞組件。

Scheduler(調度器):接收來自Scrapy Engine的請求,并按特定的規則整理排序入隊,當Scrapy Engine有需求時,再還給Scrapy Engine。

Downloader(下載器):下載Scrapy Engine發出的所有請求,并將收集到的響應回傳給Scrapy Engine,Scrapy Engine后續交給Spiders來處理。

Spiders(爬蟲):處理Scrapy Engine傳來的響應,分析提取Item字段所需要的數據,同時將需要跟進的統一資源定位器(Uniform Resource Locator,URL)交給Scrapy Engine。

Item Pipeline(管道):處理被Spider提取出來的Item,并作分析、過濾、存儲等后續處理。數據被存入Item后,將被送到Pipeline,經過處理后存入數據庫或者本地文件。

Downloader Middlewares(下載器中間件):可看作一個自定義的擴展下載組件,處理下載器傳遞給Scrapy Engine的響應。

Spider Middlewares(Spider中間件):一個自定義的擴展組件,處理Scrapy Engine和Spider之間的通信。

1.2 Bloom Filter

Bloom Filter[5]是布隆在1970年提出的。Bloom Filter是一種專門解決去重問題的高級數據結構,其實質是一系列隨機映射函數和一個二進制向量。Bloom Filter可以用來檢索一個元素在一個集合中是否存在。較之其他數據結構,Bloom Filter在空間和時間方面都有著巨大的優勢。Bloom Filter有2個基本的指令bf.exists和bf.add。bf.exists用于判斷元素是否存在于功率器中,bf.add用于添加元素。

網絡爬蟲[7]是Bloom Filter的一個常用場景,可以用來去除已經爬取過的URL。在項目應用中,將已經爬取過的URL放入Bloom Filter,每當訪問新的URL時,先查詢Bloom Filter,如果存在,則說明此網頁已經被訪問過了,無需再進行下一步操作。如果不存在,則說明該網頁沒有被訪問過,還需要進行數據爬取。RedisBloom作為Redis的一個模塊,不僅提供了常見的緩存功能,而且還對布隆過濾器的高效性能和占用空間作了優化。

2 系統設計與實現

2.1 系統技術架構

系統的技術架構如圖2所示。系統部署在某公有云平臺,公有云可以降低部署、管理、維護成本,縮短開發周期。另外,公有云的功能更全面,性能更穩定。Python語言配置方便簡單、字符處理靈活便捷且有豐富的網絡抓取模塊,因此,本系統使用Python語言進行開發。版本使用Python Anaconda 發行版,Anaconda提供了一個輕松安裝、管理、更新Python包的管理系統和大量常用的科學計算庫,另外,Anaconda還提供了一個用于瀏覽、安裝和管理各種包、環境以及工具的可視化界面。爬蟲開發技術組件使用Scrapy、Scrapyd、Redis。其中,Scrapy為爬蟲框架,Scrapyd主要負責爬蟲的管理、部署、運行(包括日志服務)等工作,Redis提供布隆過濾器組件。服務組件提供網頁發布服務,郵件訂閱服務,Web網關對外提供訪問服務。

2.2 系統工作流程

基于Scrapy的崗位推薦系統的工作流程如圖3所示。系統啟動時,從PostgreSQL數據庫加載站點元信息。Scrapy通過站點元信息初始化每個站點的Spider,初始化完成后批量啟動爬蟲,爬取URL以及其他相關信息(如:標題,時間,作者等)。系統通過Redis中的Bloom Filter檢查當前URL是否已經被訪問過。如果該URL已經被訪問過,則結束本條信息抓取操作,進入下一輪循環。如果該URL尚未被訪問,則通過Spider Middlewares下載本條URL以及相關信息。最后通過Scrapy Pipeline將數據存入PostgreSQL數據庫。

2.3 系統運行結果分析

爬蟲程序被設置成定時任務,調度器每天調度執行2次,執行完畢后會以郵件的形式發送給訂閱者,主題為“崗位信息發布/崗位數[*]”。用戶點擊郵? 件即可查閱當天發布的崗位信息。

網頁和郵件時間同步,每天早晚發布一次。如果沒有郵件訂閱,用戶也可以自行在網頁上查詢,網頁按時間展示當天更新的信息。本系統目前運行狀況穩定,所有流程均能自動完成,無需人工干預。

3 結語

隨著大數據和人工智能的發展,網絡上的信息呈爆炸式增長。紛繁復雜的信息正充斥著人們的日常生活。快速準確地獲取有效信息,可以大大提高工作效率和生活質量。利用網絡爬蟲,用戶可以按需獲取互聯網上的有效信息,避免海量信息的沖擊。本文介紹了爬蟲框架Scarpy、Redis、布隆過濾器、PostgreSQL數據庫等相關技術,設計并實現了一種基于Scrapy的崗位推薦系統,能夠幫助用戶快速精準地獲取所需要的招聘信息。

參考文獻

[1]胡文濤.一個分布式動態網頁爬蟲系統設計與實現[D].武漢:華中科技大學,2022.

[2]黎玉香,于偉.分布式網絡爬蟲系統的基本原理與實現[J].花炮科技與市場,2018(4):45.

[3]劉澤華,趙文琦,張楠.基于Scrapy技術的分布式爬蟲的設計與優化[J].信息技術與信息化,2018(增刊1):121-126.

[4]劉思林.Scrapy分布式爬蟲搜索引擎[J].電腦知識與技術,2018(34):186-188.

[5]楊本棟.基于網頁信息自動提取的分布式爬蟲系統設計與實現[D].北京:北京郵電大學,2022.

(編輯 何 琳編輯)

Design and implementation of a job recommendation system based on Scrapy

Cao? Pei1, Lin? Yongyi2*

(1.Nanjing Vocational University of Industry Technology, Nanjing 210023, China;

2.Communication University of China Nanjing, Nanjing 211172, China)

Abstract:? The development of big data and artificial intelligence has led to an explosive growth of information on the internet. How to quickly and accurately mine effective information from massive data has become a research hotspot. This article is based on the Scarpy framework and combines Redis, Bloom Filter (BF), and PostgreSQL databases to design and implement a recommendation system based on Scrapy. The system can obtain information from specified URLs, store them in the database, and present them to users in the form of web pages or emails.

Key words: recommendation system; Bloom filter; Scarpy; PostgreSQL

主站蜘蛛池模板: 亚洲日韩精品综合在线一区二区| 最新无码专区超级碰碰碰| 91 九色视频丝袜| 欧美a在线视频| 免费观看三级毛片| 在线观看亚洲精品福利片| 黄色国产在线| 国产99热| 麻豆国产精品| 亚洲手机在线| 国产激爽大片高清在线观看| 亚洲三级色| 全裸无码专区| 999国产精品| 三上悠亚一区二区| 一级毛片免费不卡在线| 久久成人免费| 一级毛片在线播放| 国产成人91精品| 国产精品污视频| 国产成人91精品| 亚洲精品图区| 久久久噜噜噜久久中文字幕色伊伊 | 97精品国产高清久久久久蜜芽| 在线五月婷婷| 最新亚洲av女人的天堂| 国产人成网线在线播放va| 91视频青青草| 亚洲无码电影| 成年看免费观看视频拍拍| 亚洲狼网站狼狼鲁亚洲下载| 欧美不卡视频在线观看| 久久福利网| 国产一区二区三区精品久久呦| 高清亚洲欧美在线看| 亚洲九九视频| 免费在线成人网| 狠狠亚洲婷婷综合色香| 国产精品一区在线麻豆| 国产精品无码制服丝袜| 手机精品福利在线观看| 日韩av电影一区二区三区四区| 亚洲国产天堂久久综合| 亚洲国产天堂久久综合226114| 久久精品亚洲中文字幕乱码| 国产永久无码观看在线| 免费观看男人免费桶女人视频| 亚洲国产日韩欧美在线| 91成人免费观看| 91成人试看福利体验区| 国产激情无码一区二区免费 | 人人艹人人爽| 国产午夜福利片在线观看 | 成人免费午夜视频| 最新国产在线| 亚洲日韩国产精品综合在线观看| 亚洲综合色区在线播放2019| 欧美成人精品在线| 99久久精品国产综合婷婷| 精品小视频在线观看| 免费无码AV片在线观看中文| 亚洲一区网站| 国产日韩精品欧美一区喷| 久久久受www免费人成| 国产三级视频网站| 在线日韩一区二区| 亚洲欧美激情小说另类| 老司机午夜精品网站在线观看| 国产白浆视频| 欧美精品v| 久久婷婷色综合老司机| 国产欧美高清| 久久国产精品无码hdav| 午夜无码一区二区三区在线app| 国产欧美日韩综合在线第一| 久热这里只有精品6| 欧美高清国产| 免费看的一级毛片| 日韩无码黄色| 999精品色在线观看| 亚洲国产天堂久久综合| 青青草国产在线视频|