實戰(zhàn)案例:爬蟲抓取網(wǎng)頁數(shù)據(jù)

我們經(jīng)常收集一些數(shù)據(jù),但是當(dāng)數(shù)據(jù)很少的時候,我們會習(xí)慣性地手動下載,但是如果數(shù)量很大,我們肯定想找一個工具來幫助收集。
 
比如說使用了一些采集工具,但是由于這些工具都是設(shè)置好的,不符合我們的需求,如果要求比較低,就要使用。如果你要求很高,不妨做一個爬蟲,抓取你想要的任何信息。
 
這取決于你是否能寫爬行動物。其實很簡單。邊肖將為大家分享抓取網(wǎng)頁數(shù)據(jù)的案例。
 
1.獲取網(wǎng)頁信息。
 
動態(tài)IP模擬器
 
Urllib模塊提供了一個讀取網(wǎng)頁數(shù)據(jù)的接口,我們可以像讀取本地文件一樣在www和ftp上讀取數(shù)據(jù)。首先,我們定義了一個getHtml()函數(shù):
 
urllib.urlopen()方法用于打開一個URL地址。
 
read()方法用于讀取URL上的數(shù)據(jù),將URL傳遞給getHtml()函數(shù),然后下載整個頁面。執(zhí)行程序會打印出整個網(wǎng)頁。
 
2.過濾頁面數(shù)據(jù)。
 
Python提供了非常強大的正則表達(dá)式,所以我們需要先了解一點Python正則表達(dá)式。
 
如果我們在百度貼吧找到一些漂亮的壁紙,可以查看前面部分的工具。找到圖片的地址,如src = " http://imgsrc . Baidu . com/forum......jpg" pic _ ext = "JPEG "。
 
按如下方式修改代碼:
 
 
我們還創(chuàng)建了getImg()函數(shù),用于過濾獲得的整個頁面中所需的圖片連接。re模塊主要包含正則表達(dá)式:
 
Re.compile()可以將正則表達(dá)式編譯成正則表達(dá)式對象。
 
re.findall()方法讀取html中包含imgre(正則表達(dá)式)的數(shù)據(jù)。
 
運行腳本將獲得整個頁面中包含的圖片的網(wǎng)址。
 
3.保存數(shù)據(jù)。
 
通過for循環(huán)遍歷過濾后的圖片地址,并將其保存在本地。代碼如下:
 
動態(tài)IP模擬器
 
這里的核心是使用urllib.urlretrieve()方法直接將遠(yuǎn)程數(shù)據(jù)下載到本地。
 
通過for循環(huán)遍歷獲得的圖片連接,重命名圖片文件名以使其看起來更標(biāo)準(zhǔn),并通過x變量為命名規(guī)則添加1。默認(rèn)情況下,保存位置是存儲程序的目錄。當(dāng)程序運行時,您將在目錄中看到本地下載的文件。
 
以上是爬蟲抓取網(wǎng)頁數(shù)據(jù)的案例分享。如今大數(shù)據(jù)時代,數(shù)據(jù)很多,需要收集足夠的數(shù)據(jù)進行分析,結(jié)果才會有價值。爬蟲抓取數(shù)據(jù)時,要記得使用代理IP,這樣可以讓爬蟲高效抓取數(shù)據(jù),在更短的時間內(nèi)產(chǎn)生結(jié)果。找代理IP,IP模擬器代理很好,不僅可以使用全國IP地址,而且是高度匿名的,而且效果更好。
 
主站蜘蛛池模板: 太大了阿受不了好爽小说| 亚洲免费人成在线视频观看| 久久久无码人妻精品无码| 精品中文字幕乱码一区二区| 好吊妞欧美视频免费| 亚洲午夜久久久影院伊人| 理论片手机在线观看免费视频| 国产成人精品怡红院| 一个人看的毛片| 极品丝袜系列列表| 内射中出无码护士在线| 四虎1515hh永久久免费| 尤物在线视频观看| 二级毛片免费观看全程| 精品久久久久久久久中文字幕 | 天天色天天色天天色| 久香草视频在线观看| 欧美精品亚洲精品日韩专区va| 国产乱色精品成人免费视频| 97视频久久久| 成年女人免费v片| 亚洲国产成人精品无码区在线观看| 美女把尿口扒开让男人桶| 国产精品久久久久免费a∨| 一级免费黄色片| 最近中文字幕2018| 免费a在线观看播放| 黄色三级电影网| 国产高清免费视频| 中国国语毛片免费观看视频 | 秦老头大战秦丽娟无删节| 国产成人av一区二区三区在线观看 | 97久久精品无码一区二区天美 | 国产精品蜜芽在线观看| 丁香亚洲综合五月天婷婷| 樱花草在线社区www韩国| 亚洲国产精品yw在线观看| 直接在线观看的三级网址| 国产九九视频在线观看| 477777开奖现场老玩家| 好深好爽办公室做视频|