python爬蟲初體驗

網(wǎng)絡爬蟲(Web Spider)是什么

網(wǎng)絡爬蟲也叫網(wǎng)絡蜘蛛,即Web Spider,名字也是非常之形象。


簡書-1

如果把互聯(lián)網(wǎng)比喻成一個蜘蛛網(wǎng),那么Spider就是在網(wǎng)上爬來爬去的蜘蛛。

網(wǎng)絡蜘蛛通過網(wǎng)頁的鏈接地址來尋找網(wǎng)頁,從網(wǎng)站某一個頁面(通常是首頁)開始,讀取網(wǎng)頁的內(nèi)容,找到在網(wǎng)頁中的其它鏈接地址,然后通過這些鏈接地址尋找下一個網(wǎng)頁,一直循環(huán)下去,直到把整個網(wǎng)站所有的網(wǎng)頁都抓取完為止。

如果把整個互聯(lián)網(wǎng)就當成一個網(wǎng)站,那么網(wǎng)絡蜘蛛可以用這個原理把互聯(lián)網(wǎng)上所有的網(wǎng)頁都抓取下來。

爬蟲是用來干嘛的??

爬蟲就是從網(wǎng)頁中爬取數(shù)據(jù)的,這些數(shù)據(jù)可以是網(wǎng)頁代碼、圖片、視頻、音頻等等,只要是瀏覽器網(wǎng)頁中可以呈現(xiàn)的,都可以通過爬蟲程序獲取。

但是有很多從網(wǎng)頁上獲取數(shù)據(jù)有很多種方法,如:迅雷,抓站工具等
為什么要用爬蟲??
爬蟲可以從網(wǎng)上爬去大量的數(shù)據(jù),相對與手工下載工具之類的,在需要大量數(shù)據(jù)據(jù)的時候,爬蟲會更省時,提高效率。

下面是引用別人的

對于數(shù)據(jù)的采集工作,一般情況下不會是少量數(shù)據(jù)的定向采集,通常會是大量網(wǎng)站大量數(shù)據(jù)的集中采集,然后對于這些大量數(shù)據(jù)進行篩選分析,如~XX公司要開發(fā)一套新聞網(wǎng)站[web項目],需要大量的新聞素材作為網(wǎng)站的基礎數(shù)據(jù),現(xiàn)要對1000個指定的新聞網(wǎng)站中的30天的數(shù)據(jù)進行獲取。通常情況下,如果是針對性的大量數(shù)據(jù)的采集工作,我們會使用爬蟲程序進行自動化操作。

爬蟲分類

  • 通用爬蟲

    1. 搜索引擎常用的信息數(shù)據(jù)采集手段,遵循數(shù)據(jù)采集的robot協(xié)議{該協(xié)議是約定的一種規(guī)范,約定了哪些數(shù)據(jù)可以讓搜索引擎的爬蟲采集!}
    2. 通用爬蟲通常是很多網(wǎng)站比較歡迎的一種操作手段,通用爬蟲可以引入新的客戶流量,用戶在訪問當前網(wǎng)站時,除了直接通過url地址訪問,還可以通過搜索引擎導向訪問當前網(wǎng)站!
    3. 通用爬蟲存在一定的缺陷:通用爬蟲~一般是提供公共的數(shù)據(jù)給所有的用戶使用的,沒有針對性、對于搜索數(shù)據(jù)的關鍵詞不會有語義化定義、數(shù)據(jù)的采集比較分散
  • 聚焦爬蟲

    程序開發(fā)人員針對具體的需求,針對性的開發(fā)獲取數(shù)據(jù)的程序,通過程 序的自動化操作,完成人工篩選過程~[自定義采集方式、自定義篩選條件、自定義過濾措施->私人訂制!],不需要遵循robot協(xié)議!可以獲取到更加準確的數(shù)據(jù)!

第一個爬蟲程序

環(huán)境:python2.7
# -*- coding: utf-8 -*-
# python2中使用的是ACSII編碼,對中文支持不太好,所以一般在程序第一行加一行注釋說明使用的什么編碼格式
# 引入需要的模塊
import urllib2

# 爬求指定網(wǎng)頁
response = urllib2.urlopen("https://www.taobao.com")

print(response.read())
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容