亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇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)生了各種對(duì)人類有價(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ā)展,人們對(duì)網(wǎng)絡(luò)信息和數(shù)據(jù)的檢索和提取的要求也逐漸提高。由于部分信息數(shù)據(jù)搜索過于復(fù)雜,而且訪問Web檢索工具又一般都是些傳統(tǒng)的搜索引擎,它們則具有一定的局限性,往往不能滿足用戶的檢索目的和需求。因而引入網(wǎng)絡(luò)爬蟲技術(shù)則具有重大意義,考慮到Python語言目前在市場(chǎng)上十分火熱,而且在編寫爬蟲領(lǐng)域方面具有一定的優(yōu)勢(shì),為此,本文將對(duì)基于Python的網(wǎng)絡(luò)爬蟲技術(shù)展開初步的研究。

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

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

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

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

        隨著互聯(lián)網(wǎng)的快速發(fā)展,全球互聯(lián)網(wǎng)網(wǎng)站和網(wǎng)頁的數(shù)量也在迅速增長(zhǎng),互聯(lián)網(wǎng)的信息量也呈指數(shù)級(jí)的增長(zhǎng)?;ヂ?lián)網(wǎng)是一個(gè)巨大的高度開放,缺乏管理的信息空間。雖然信息量十分巨大,但是對(duì)于用戶來說,真正有價(jià)值的信息就變得非常有限。如果用戶想要從互聯(lián)網(wǎng)上獲取有用的信息,他們需要搜素引擎的幫助,如信息檢索系統(tǒng)。搜索引擎是根據(jù)一定的策略和特定的計(jì)算機(jī)程序從互聯(lián)網(wǎng)進(jìn)行搜索的軟件系統(tǒng),在處理和處理信息后為用戶提供檢索服務(wù)。目前市場(chǎng)上比較流行的搜索引擎有百度、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ù),而不需要我們?cè)偃?gòu)建一個(gè)符合條件的、完整的搜索器。但是在網(wǎng)絡(luò)資源爆炸的情況下,網(wǎng)頁的內(nèi)容更新的速度極為迅速,網(wǎng)頁的結(jié)構(gòu)也在時(shí)刻變化。爬蟲能否及時(shí)檢測(cè)網(wǎng)頁更新并采取相應(yīng)的對(duì)策,已成為了爬行技術(shù)是否成熟的標(biāo)識(shí)之一。在爬蟲設(shè)計(jì)過程中存在著對(duì)于統(tǒng)一資源地址的去重問題?,F(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)行效率。同樣,在對(duì)網(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ì)采取一種簡(jiǎn)單的方式就是將訪問過的URL保存到數(shù)據(jù)庫中,這樣當(dāng)我們?cè)L問下一個(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í)沒有被爬取,之后對(duì)存儲(chǔ)文件就會(huì)變得很麻煩。對(duì)于任務(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í)間和資源,對(duì)信息檢索起著十分重要的作用。尤其基于Python的網(wǎng)絡(luò)爬蟲技術(shù)更具有必要性,它更能夠滿足未來信息檢索的要求。因此它具有很高的發(fā)展前景,同樣也具有一定的推廣價(jià)值和研究?jī)r(jià)值。

        【參考文獻(xiàn)】

        [1]許劍穎.搜索引擎發(fā)展趨勢(shì)研究[J].中國(guó)科技縱橫,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í)漫畫
        搜索,也要“深搜熟濾”
        国产精品久久久久久久久鸭 | 国产乱人视频在线观看播放器| 中文字幕一区二区人妻在线不卡| 中文字幕人妻少妇伦伦| 人妻aⅴ中文字幕| 日本精品a在线观看| 在线亚洲精品国产成人二区| 青青草视频在线观看网| 亚洲一区二区三区av无码| 成人无码午夜在线观看| 国产亚洲三级在线视频| 日本国产精品久久一线 | 亚洲经典三级| 国产亚洲精品国看不卡| 亚洲一区二区三区重口另类| 久久综合亚洲色一区二区三区| 最近中文av字幕在线中文| 国产精品一区区三区六区t区| 伊人久久大香线蕉av色婷婷色| 国产裸体舞一区二区三区| 一区二区三区日韩亚洲中文视频| 日本久久精品国产精品| 一个少妇的淫片免费看 | 国语自产视频在线| 免费无码又爽又刺激聊天app| 国产美女裸身网站免费观看视频| 亚洲精品中文字幕91| 国产成人无码精品久久久露脸| 国产成+人+综合+亚洲 欧美| 亚洲愉拍自拍视频一区| 国产成年人毛片在线99| 无码一区二区三区在线 | 日韩精品少妇专区人妻系列| 看日本全黄色免费a级| 老师翘臀高潮流白浆| 天天中文字幕av天天爽| 在线精品国产亚洲av麻豆 | 亚洲欧美综合在线天堂| 在线不卡中文字幕福利| 国产一区二区视频免费在线观看| 无码骚夜夜精品|