基于python的網(wǎng)絡(luò)爬蟲設(shè)計

基于python的網(wǎng)絡(luò)爬蟲設(shè)計

ID:31895791

大小:721.00 KB

頁數(shù):9頁

時間:2019-01-25

基于python的網(wǎng)絡(luò)爬蟲設(shè)計_第1頁
基于python的網(wǎng)絡(luò)爬蟲設(shè)計_第2頁
基于python的網(wǎng)絡(luò)爬蟲設(shè)計_第3頁
基于python的網(wǎng)絡(luò)爬蟲設(shè)計_第4頁
基于python的網(wǎng)絡(luò)爬蟲設(shè)計_第5頁
資源描述:

《基于python的網(wǎng)絡(luò)爬蟲設(shè)計》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、.基于python的網(wǎng)絡(luò)爬蟲設(shè)計【摘要】近年來,隨著網(wǎng)絡(luò)應(yīng)用的逐漸擴展和深入,如何高效的獲取網(wǎng)上數(shù)據(jù)成為了無數(shù)公司和個人的追求,在大數(shù)據(jù)時代,誰掌握了更多的數(shù)據(jù),誰就可以獲得更高的利益,而網(wǎng)絡(luò)爬蟲是其中最為常用的一種從網(wǎng)上爬取數(shù)據(jù)的手段。網(wǎng)絡(luò)爬蟲,即WebSpider,是一個很形象的名字。如果把互聯(lián)網(wǎng)比喻成一個蜘蛛網(wǎng),那么Spider就是在網(wǎng)上爬來爬去的蜘蛛。網(wǎng)絡(luò)蜘蛛是通過網(wǎng)頁的鏈接地址來尋找網(wǎng)頁的。從網(wǎng)站某一個頁面(通常是首頁)開始,讀取網(wǎng)頁的內(nèi)容,找到在網(wǎng)頁中的其它鏈接地址,然后通過這些鏈接地址尋找下一個網(wǎng)頁,這樣一直循環(huán)下去,直到把這個網(wǎng)站

2、所有的網(wǎng)頁都抓取完為止。如果把整個互聯(lián)網(wǎng)當(dāng)成一個網(wǎng)站,那么網(wǎng)絡(luò)蜘蛛就可以用這個原理把互聯(lián)網(wǎng)上所有的網(wǎng)頁都抓取下來。那么,既然網(wǎng)絡(luò)爬蟲有著如此先進快捷的特點,我們該如何實現(xiàn)它呢?在眾多面向?qū)ο蟮恼Z言中,首選python,因為python是一種“解釋型的、面向?qū)ο蟮摹в袆討B(tài)語義的”高級程序,可以使人在編程時保持自己的風(fēng)格,并且編寫的程序清晰易懂,有著很廣闊的應(yīng)用前景。關(guān)鍵詞python爬蟲數(shù)據(jù)1前言1.1本編程設(shè)計的目的和意義隨著網(wǎng)絡(luò)的迅速發(fā)展,萬維網(wǎng)成為大量信息的載體,如何有效地提取并利用這些信息成為一個巨大的挑戰(zhàn)。搜索引擎(例如傳統(tǒng)的通用搜索引

3、擎AltaVista,Yahoo!和Google等)作為一個輔助人們檢索信息的工具成為用戶訪問萬維網(wǎng)的入口和指南。但是,這些通用性搜索引擎也存在著一定的局限性,如:(1)不同領(lǐng)域、不同背景的用戶往往具有不同的檢索目的和需求,通用搜索引擎所返回的結(jié)果包含大量用戶不關(guān)心的網(wǎng)頁。(2)通用搜索引擎的目標(biāo)是盡可能大的網(wǎng)絡(luò)覆蓋率,有限的搜索引擎服務(wù)器資源與無限的網(wǎng)絡(luò)數(shù)據(jù)資源之間的矛盾將進一步加深。(3)萬維網(wǎng)數(shù)據(jù)形式的豐富和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,圖片、數(shù)據(jù)庫、音頻/視頻多媒體等不同數(shù)據(jù)大量出現(xiàn),通用搜索引擎往往對這些信息含量密集且具有一定結(jié)構(gòu)的數(shù)據(jù)無能為力,

4、不能很好地發(fā)現(xiàn)和獲取。(4)通用搜索引擎大多提供基于關(guān)鍵字的檢索,難以支持根據(jù)語義信息提出的查詢。為了解決上述問題,定向抓取相關(guān)網(wǎng)頁資源的聚焦爬蟲應(yīng)運而生。聚焦爬蟲是一個自動下載網(wǎng)頁的程序,它根據(jù)既定的抓取目標(biāo),有選擇的訪問萬維網(wǎng)上的網(wǎng)頁與相關(guān)的鏈接,獲取所需要的信息。與通用爬蟲(generalpurposewebcrawler)不同,聚焦爬蟲并不追求大的覆蓋,而將目標(biāo)定為抓取與某一特定主題內(nèi)容相關(guān)的網(wǎng)頁,為面向主題的用戶查詢準(zhǔn)備數(shù)據(jù)資源。1.2編程設(shè)計目及思路1.2.1編程設(shè)計目的學(xué)習(xí)了解并熟練掌握python的語法規(guī)則和基本使用,對網(wǎng)絡(luò)爬蟲的

5、基礎(chǔ)知識進行了一定程度的理解,提高對網(wǎng)頁源代碼的認知水平,學(xué)習(xí)用正則表達式來完成匹配查找的工作,了解數(shù)據(jù)庫的用途,學(xué)習(xí)mongodb數(shù)據(jù)庫的安裝和使用,及配合python的工作。1.2.2設(shè)計思路...(1)以世紀(jì)佳緣網(wǎng)為例,思考自己所需要的數(shù)據(jù)資源,并以此為基礎(chǔ)設(shè)計自己的爬蟲程序。(2)應(yīng)用python偽裝成瀏覽器自動登陸世紀(jì)佳緣網(wǎng),加入變量打開多個網(wǎng)頁。(3)通過python的urllib2函數(shù)進行世紀(jì)佳緣網(wǎng)源代碼的獲取。(4)用正則表達式分析源代碼,找到所需信息導(dǎo)入excel。(5)連接數(shù)據(jù)庫,將爬下的數(shù)據(jù)存儲在數(shù)據(jù)庫中。1.3本編程設(shè)計應(yīng)

6、達到的要求1、對特定的網(wǎng)站爬取特定的數(shù)據(jù);2、實現(xiàn)代碼和得到結(jié)果;3、能夠和數(shù)據(jù)庫進行連接,將爬下的數(shù)據(jù)存儲在數(shù)據(jù)庫中。4、將爬下的數(shù)據(jù)儲存在excel中方便編輯。2編程設(shè)計方案2.1爬取方案2.1.1所需爬取的數(shù)據(jù)以世紀(jì)佳緣網(wǎng)為例,所需要爬取的數(shù)據(jù)為注冊世紀(jì)佳緣網(wǎng)的人的用戶名、真實姓名、性別、年齡、學(xué)歷、月收入這些直觀信息。2.1.2用python獲取世紀(jì)佳緣網(wǎng)的源代碼爬蟲最主要的處理對象就是URL,它根據(jù)URL地址取得所需要的文件內(nèi)容,然后對它進行進一步的處理。因此,準(zhǔn)確地理解URL對理解網(wǎng)絡(luò)爬蟲至關(guān)重要。URL是URI的一個子集。它是Uni

7、formResourceLocator的縮寫,譯為“統(tǒng)一資源定位符”。通俗地說,URL是Internet上描述信息資源的字符串,主要用在各種WWW客戶程序和服務(wù)器程序上。采用URL可以用一種統(tǒng)一的格式來描述各種信息資源,包括文件、服務(wù)器的地址和目錄等。URL的格式由三部分組成:?①第一部分是協(xié)議(或稱為服務(wù)方式)。②第二部分是存有該資源的主機IP地址(有時也包括端口號)。③第三部分是主機資源的具體地址,如目錄和文件名等。第一部分和第二部分用“://”符號隔開,第二部分和第三部分用“/”符號隔開。第一部分和第二部分是不可缺少的,第三部分有時可以省略

8、。例如:http://www.rol.cn.net/talk/talk1.htm?其計算機域名為www.rol.cn.net;超級文本文

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。