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

基于Python的網(wǎng)絡(luò)爬蟲技術(shù)綜述

2019-06-01 07:35:00汪洋姜新通
智富時(shí)代 2019年4期
關(guān)鍵詞:搜索引擎

汪洋 姜新通

【摘 要】人類社會(huì)已經(jīng)進(jìn)入大數(shù)據(jù)時(shí)代,這正在改變著我們的工作和生活。隨著互聯(lián)網(wǎng)的興起和發(fā)展,同時(shí)也產(chǎn)生了各種對人類有價(jià)值的數(shù)據(jù)。快速搜索數(shù)據(jù)和充分利用數(shù)據(jù)信息已成為一個(gè)巨大挑戰(zhàn)。這樣的需求催生了搜索引擎的出現(xiàn)和發(fā)展,搜素引擎是用戶獲取網(wǎng)絡(luò)信息的重要途徑,給人們帶來了極大的便利。然而,隨著互聯(lián)網(wǎng)的不斷發(fā)展,搜索引擎已不能滿足各個(gè)領(lǐng)域的需求了,因此網(wǎng)絡(luò)爬蟲技術(shù)就應(yīng)運(yùn)而生了。而Python作為一種強(qiáng)大的語言,使得網(wǎng)絡(luò)爬蟲技術(shù)能夠更好地提取數(shù)據(jù)。

【關(guān)鍵詞】Python;搜索引擎;爬蟲技術(shù)

一、引言

隨著互聯(lián)網(wǎng)時(shí)代的快速發(fā)展,人們對網(wǎng)絡(luò)信息和數(shù)據(jù)的檢索和提取的要求也逐漸提高。由于部分信息數(shù)據(jù)搜索過于復(fù)雜,而且訪問Web檢索工具又一般都是些傳統(tǒng)的搜索引擎,它們則具有一定的局限性,往往不能滿足用戶的檢索目的和需求。因而引入網(wǎng)絡(luò)爬蟲技術(shù)則具有重大意義,考慮到Python語言目前在市場上十分火熱,而且在編寫爬蟲領(lǐng)域方面具有一定的優(yōu)勢,為此,本文將對基于Python的網(wǎng)絡(luò)爬蟲技術(shù)展開初步的研究。

二、國內(nèi)外基于Python爬蟲技術(shù)概況

(一)網(wǎng)絡(luò)爬蟲技術(shù)概述

網(wǎng)絡(luò)爬蟲技術(shù)作為搜索引擎的重要組成部分,可以自動(dòng)地對相關(guān)頁面和內(nèi)容進(jìn)行爬蟲和保存。網(wǎng)絡(luò)爬蟲又被稱為網(wǎng)絡(luò)蜘蛛,所以可以看出爬蟲就是一只蜘蛛,而互聯(lián)網(wǎng)其實(shí)就是一張巨大的蜘蛛網(wǎng),爬蟲的目的就是將蜘蛛網(wǎng)上的獵物全部抓取起來。

(二)國內(nèi)外研究現(xiàn)狀

隨著互聯(lián)網(wǎng)的快速發(fā)展,全球互聯(lián)網(wǎng)網(wǎng)站和網(wǎng)頁的數(shù)量也在迅速增長,互聯(lián)網(wǎng)的信息量也呈指數(shù)級(jí)的增長。互聯(lián)網(wǎng)是一個(gè)巨大的高度開放,缺乏管理的信息空間。雖然信息量十分巨大,但是對于用戶來說,真正有價(jià)值的信息就變得非常有限。如果用戶想要從互聯(lián)網(wǎng)上獲取有用的信息,他們需要搜素引擎的幫助,如信息檢索系統(tǒng)。搜索引擎是根據(jù)一定的策略和特定的計(jì)算機(jī)程序從互聯(lián)網(wǎng)進(jìn)行搜索的軟件系統(tǒng),在處理和處理信息后為用戶提供檢索服務(wù)。目前市場上比較流行的搜索引擎有百度、Google等。搜索引擎的發(fā)展伴隨著信息檢索技術(shù)的發(fā)展。1972年,APPNET實(shí)驗(yàn)網(wǎng)絡(luò)的成功標(biāo)志著互聯(lián)網(wǎng)的誕生。1993年瀏覽器的發(fā)展更是促進(jìn)了搜索引擎的快速發(fā)展。1994年由美籍華人楊致遠(yuǎn)和DavidFilo共同創(chuàng)建了世界上第一個(gè)網(wǎng)絡(luò)檢索工具Web Crawler,也就是大家所熟悉的Yahoo。

(三)爬蟲技術(shù)現(xiàn)狀和爬蟲從業(yè)者面臨的問題

網(wǎng)絡(luò)爬蟲技術(shù)發(fā)展至今,已經(jīng)有無數(shù)的開源庫和開源框架為我們提供了便利而更好地開發(fā)。例如scrapy等其他框架。有了這些開源框架就可以幫助我們根據(jù)自己想要爬取的內(nèi)容來定制爬取規(guī)則并快速地獲取到我們想要的數(shù)據(jù),而不需要我們再去構(gòu)建一個(gè)符合條件的、完整的搜索器。但是在網(wǎng)絡(luò)資源爆炸的情況下,網(wǎng)頁的內(nèi)容更新的速度極為迅速,網(wǎng)頁的結(jié)構(gòu)也在時(shí)刻變化。爬蟲能否及時(shí)檢測網(wǎng)頁更新并采取相應(yīng)的對策,已成為了爬行技術(shù)是否成熟的標(biāo)識(shí)之一。在爬蟲設(shè)計(jì)過程中存在著對于統(tǒng)一資源地址的去重問題。現(xiàn)在的網(wǎng)絡(luò)資源的規(guī)模十分龐大早已超出了我們以前的認(rèn)知范圍,所以在網(wǎng)絡(luò)中存在許多相同的統(tǒng)一資源地址。在數(shù)據(jù)的爬行過程中,網(wǎng)絡(luò)爬蟲必然會(huì)收集重復(fù)的內(nèi)容。這不僅浪費(fèi)時(shí)間成本,而且浪費(fèi)服務(wù)器等其他硬件資源。所以設(shè)計(jì)一個(gè)網(wǎng)絡(luò)爬蟲的時(shí)候,應(yīng)該考慮到爬蟲是否能夠分析網(wǎng)頁內(nèi)容結(jié)構(gòu),分辨相同內(nèi)容的腳本變化,從而找到不重復(fù)的內(nèi)容下載保存并提高運(yùn)行效率。同樣,在對網(wǎng)站信息進(jìn)行爬行的過程中,網(wǎng)站可能會(huì)限制每個(gè)IP的訪問速度或訪問次數(shù),或者有時(shí)會(huì)直接禁止訪問網(wǎng)站。由于出現(xiàn)這樣限制IP訪問的情況,會(huì)導(dǎo)致用戶不能及時(shí)獲取到信息以至于不能完成任務(wù)。所以在設(shè)計(jì)爬蟲的過程中要將IP的因素考慮到,這樣才不會(huì)出現(xiàn)限制或封鎖IP的問題。在爬取目標(biāo)網(wǎng)頁信息的過程中,多線程會(huì)提高爬蟲的速度,而所有線程在同一進(jìn)程下,線程的問題是共存空間,通訊效率高,切換開銷小。而在Python中又由于GIL全局解釋器鎖的存在,一個(gè)線程需要執(zhí)行任務(wù)必須獲取GIL,但是在Python的進(jìn)程里只有一個(gè)GIL。所以多線程在爬蟲技術(shù)設(shè)計(jì)的過程中的選擇是不可缺少的條件之一。

三、爬蟲技術(shù)中問題的解決方案介紹

網(wǎng)絡(luò)爬蟲技術(shù)中遇到的問題層出不窮,就我在爬蟲中得到的經(jīng)驗(yàn)提出以下幾種解決方案。某些網(wǎng)頁具有反爬機(jī)制,目的就是為了不讓爬蟲爬取到數(shù)據(jù)。所以當(dāng)同一個(gè)IP爬取次數(shù)過多時(shí),IP會(huì)被禁止爬取數(shù)據(jù)。使用代理后,我們可以讓爬蟲偽裝其真實(shí)的IP,所以我們使用大量的隨機(jī)的代理進(jìn)行爬行,但網(wǎng)站不知道是我們的爬蟲一直在爬行數(shù)據(jù),有效地解決了IP封鎖等反爬行的問題。在高速運(yùn)行的爬蟲工作過程中,難免會(huì)碰到URL重復(fù)的問題,我通常會(huì)采取一種簡單的方式就是將訪問過的URL保存到數(shù)據(jù)庫中,這樣當(dāng)我們訪問下一個(gè)URL的時(shí)候,打開數(shù)據(jù)庫去查詢這個(gè)URL是否被訪問過即可,雖然會(huì)導(dǎo)致效率下降,但是卻十分方便。IO密集型代碼在Python的多線程中占據(jù)了更好的位置。當(dāng)我們使用多線程爬取數(shù)據(jù)時(shí),會(huì)出現(xiàn)爬蟲每次都會(huì)把URL列表里URL在沒有爬取到內(nèi)容的時(shí)候就已經(jīng)生成了一個(gè)線程,如果出現(xiàn)斷網(wǎng)等其他特殊情況的話,就會(huì)有很多的URL其實(shí)沒有被爬取,之后對存儲(chǔ)文件就會(huì)變得很麻煩。對于任務(wù)數(shù)量不斷增加的程序來說,每有一個(gè)任務(wù)就會(huì)有一個(gè)新的線程生成,線程會(huì)越來越多以至于到最后不能控制,所以固定線程數(shù)量的線程是必不可少的。

四、結(jié)語

本文主要介紹基于Python的網(wǎng)絡(luò)爬蟲技術(shù)的定義和特點(diǎn),網(wǎng)絡(luò)爬蟲技術(shù)的產(chǎn)生和發(fā)展,還重點(diǎn)介紹了在爬蟲過程中遇到的問題和解決辦法。在這個(gè)大數(shù)據(jù)時(shí)代,網(wǎng)絡(luò)爬蟲技術(shù)可以有效準(zhǔn)確地抓取目標(biāo)數(shù)據(jù),可以為我們節(jié)省大量的時(shí)間和資源,對信息檢索起著十分重要的作用。尤其基于Python的網(wǎng)絡(luò)爬蟲技術(shù)更具有必要性,它更能夠滿足未來信息檢索的要求。因此它具有很高的發(fā)展前景,同樣也具有一定的推廣價(jià)值和研究價(jià)值。

【參考文獻(xiàn)】

[1]許劍穎.搜索引擎發(fā)展趨勢研究[J].中國科技縱橫,2013(2):51-55

[2]郭麗蓉.基于Python的網(wǎng)絡(luò)爬蟲程序設(shè)計(jì)[J].電子技術(shù)與軟件工程,2017(12):23-24

[3]王曉東.基于元搜索引擎的網(wǎng)絡(luò)視頻搜索系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].東南大學(xué).2014

猜你喜歡
搜索引擎
網(wǎng)絡(luò)搜索引擎亟待規(guī)范
Nutch搜索引擎在網(wǎng)絡(luò)輿情管控中的應(yīng)用
基于Nutch的醫(yī)療搜索引擎的研究與開發(fā)
廣告主與搜索引擎的雙向博弈分析
知識(shí)漫畫
搜索,也要“深搜熟濾”
主站蜘蛛池模板: 久久国产精品波多野结衣| 啪啪免费视频一区二区| 国产一区二区三区在线精品专区| 久久精品丝袜高跟鞋| 国产成人高清精品免费软件 | 福利一区在线| 99久久国产综合精品2023| 激情视频综合网| 国产精品视频3p| 亚洲综合第一区| 亚洲天堂网2014| 91精品国产麻豆国产自产在线| 98超碰在线观看| 欧美激情视频二区| 精品国产福利在线| 成人第一页| 日本影院一区| 天堂在线www网亚洲| 麻豆精品在线视频| 91精品国产综合久久不国产大片| 国产在线欧美| 日韩精品毛片人妻AV不卡| 一级毛片a女人刺激视频免费| 毛片一级在线| 欧美精品v日韩精品v国产精品| 亚洲av片在线免费观看| 国产麻豆福利av在线播放| 成人国产精品网站在线看| 看国产一级毛片| 国产美女在线观看| 欧美午夜理伦三级在线观看| 一级毛片免费播放视频| 欧美日韩资源| 台湾AV国片精品女同性| 国产真实二区一区在线亚洲| 国产情侣一区二区三区| 全午夜免费一级毛片| 真实国产乱子伦视频| 亚洲欧美日韩高清综合678| 91精品伊人久久大香线蕉| 亚洲一区免费看| 国产小视频a在线观看| 女人天堂av免费| 欧美97色| 亚洲国产日韩视频观看| 三上悠亚一区二区| 国产成人高清在线精品| 蜜臀AVWWW国产天堂| 亚洲一级毛片在线观播放| 免费在线播放毛片| 亚洲激情区| 国产打屁股免费区网站| 香蕉在线视频网站| 欧美一区福利| 亚洲伊人久久精品影院| 日韩精品毛片人妻AV不卡| 亚洲欧美另类日本| 性网站在线观看| 亚洲成人在线免费观看| 精品99在线观看| 视频一本大道香蕉久在线播放| 亚洲一区无码在线| 99视频精品全国免费品| 2022国产无码在线| 欧洲日本亚洲中文字幕| 亚洲男人的天堂久久精品| 她的性爱视频| 亚洲福利网址| 88av在线| 欧美97欧美综合色伦图| 亚洲精品国产综合99久久夜夜嗨| 欧美综合区自拍亚洲综合天堂| 国产精品成人AⅤ在线一二三四| 亚洲欧美不卡视频| 青青草原国产精品啪啪视频| 亚洲无码免费黄色网址| 曰AV在线无码| 日韩天堂在线观看| 国产精品人人做人人爽人人添| 国产欧美性爱网| 香蕉久人久人青草青草| 欧美午夜网|