摘要:所以使用代理隱藏真實(shí)的,讓服務(wù)器誤以為是代理服務(wù)器的在請(qǐng)求自己。參考來(lái)源由于涉及到一些專業(yè)名詞知識(shí),本節(jié)的部分內(nèi)容參考來(lái)源如下代理服務(wù)器維基百科代理百度百科上一篇文章網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)和下一篇文章網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)使用發(fā)送請(qǐng)求
上一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---18、Session和Cookies
下一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---20、使用Urllib:發(fā)送請(qǐng)求
我們?cè)谧雠老x的過(guò)程中經(jīng)常會(huì)遇到這樣的情況,最初爬蟲正常運(yùn)行,正常抓取數(shù)據(jù),一切看起來(lái)都是那么的美好,然而一杯茶的功夫可能就會(huì)出現(xiàn)錯(cuò)誤,比如 403 Forbidden,這時(shí)候打開網(wǎng)頁(yè)一看,可能會(huì)看到“您的 IP 訪問(wèn)頻率太高”這樣的提示。出現(xiàn)這樣的現(xiàn)象的原因是網(wǎng)站采取了一些反爬蟲的措施,比如服務(wù)器會(huì)檢測(cè)某個(gè) IP 在單位時(shí)間內(nèi)的請(qǐng)求次數(shù),如果超過(guò)了這個(gè)閾值,那么會(huì)直接拒絕服務(wù),返回一些錯(cuò)誤信息,這種情況可以稱之為封 IP,于是乎就成功把我們的爬蟲禁掉了。
既然服務(wù)器檢測(cè)的是某個(gè) IP 單位時(shí)間的請(qǐng)求次數(shù),那么我們借助某種方式來(lái)偽裝我們的 IP,讓服務(wù)器識(shí)別不出是由我們本機(jī)發(fā)起的請(qǐng)求,不就可以成功防止封 IP 了嗎?
那么在這里一種有效的方式就是使用代理,使用它我們可以成功偽裝 IP,避免本機(jī) IP 被封禁的情況,在后文會(huì)有詳細(xì)的代理使用的說(shuō)明,在這之前我們需要先了解下代理的基本原理,它是怎樣實(shí)現(xiàn) IP 偽裝的呢?本節(jié)就讓我們先了解一下代理的概念。
1. 基本原理我們常稱呼的代理實(shí)際上指的就是代理服務(wù)器,英文叫做 Proxy Server,它的功能是代理網(wǎng)絡(luò)用戶去取得網(wǎng)絡(luò)信息。形象地說(shuō),它是網(wǎng)絡(luò)信息的中轉(zhuǎn)站。在我們正常請(qǐng)求一個(gè)網(wǎng)站時(shí),是發(fā)送了 Request 給 Web 服務(wù)器,Web 服務(wù)器把 Response 傳回給我們。如果設(shè)置了代理服務(wù)器,實(shí)際上就是在本機(jī)和服務(wù)器之間搭建了一個(gè)橋,此時(shí)本機(jī)不是直接向 Web 服務(wù)器發(fā)起請(qǐng)求,而是向代理服務(wù)器發(fā)出請(qǐng)求, Request 會(huì)發(fā)送給代理服務(wù)器,然后由代理服務(wù)器再發(fā)送給 Web 服務(wù)器,然后由代理服務(wù)器再把 Web 服務(wù)器返回的 Response 轉(zhuǎn)發(fā)給本機(jī),這樣我們同樣可以正常訪問(wèn)網(wǎng)頁(yè),但這個(gè)過(guò)程 Web 服務(wù)器識(shí)別出的真實(shí)的 IP 就不再是我們本機(jī)的 IP 了,就成功實(shí)現(xiàn)了 IP 偽裝,這就是代理的基本原理。
2. 代理的作用那么代理有什么作用呢?我們可以簡(jiǎn)單列舉如下:
突破自身 IP 訪問(wèn)限制,訪問(wèn)一些平時(shí)不能訪問(wèn)的站點(diǎn)。
訪問(wèn)一些單位或團(tuán)體內(nèi)部資源,如使用教育網(wǎng)內(nèi)地址段免費(fèi)代理服務(wù)器,就可以用于對(duì)教育網(wǎng)開放的各類 FTP 下載上傳,以及各類資料查詢共享等服務(wù)。
提高訪問(wèn)速度,通常代理服務(wù)器都設(shè)置一個(gè)較大的硬盤緩沖區(qū),當(dāng)有外界的信息通過(guò)時(shí),同時(shí)也將其保存到緩沖區(qū)中,當(dāng)其他用戶再訪問(wèn)相同的信息時(shí), 則直接由緩沖區(qū)中取出信息,傳給用戶,以提高訪問(wèn)速度。
隱藏真實(shí) IP,上網(wǎng)者也可以通過(guò)這種方法隱藏自己的 IP,免受攻擊,對(duì)于爬蟲來(lái)說(shuō),我們用代理就是為了隱藏自身 IP,防止自身的 IP 被封鎖。
3. 爬蟲代理對(duì)于爬蟲來(lái)說(shuō),由于爬蟲爬取速度過(guò)快,在爬取過(guò)程中可能遇到同一個(gè) IP 訪問(wèn)過(guò)于頻繁的問(wèn)題,網(wǎng)站就會(huì)讓我們輸入驗(yàn)證碼或登錄或者直接封鎖 IP,這樣會(huì)給爬取帶來(lái)極大的不便。
所以使用代理隱藏真實(shí)的 IP,讓服務(wù)器誤以為是代理服務(wù)器的在請(qǐng)求自己。這樣在爬取過(guò)程中通過(guò)不斷更換代理,就不會(huì)被封鎖,可以達(dá)到很好的爬取效果。
4. 代理分類代理分類時(shí)可以根據(jù)協(xié)議區(qū)分也可以根據(jù)其匿名程度區(qū)分,下面分別總結(jié)如下:
根據(jù)協(xié)議區(qū)分根據(jù)代理的協(xié)議區(qū)分,代理可以分為如下類別:
FTP 代理服務(wù)器,主要用于訪問(wèn) FTP 服務(wù)器,一般有上傳、下載以及緩存功能,端口一般為 21、2121 等。
HTTP 代理服務(wù)器,主要用于訪問(wèn)網(wǎng)頁(yè),一般有內(nèi)容過(guò)濾和緩存功能,端口一般為 80、8080、3128 等。
SSL/TLS 代理,主要用于訪問(wèn)加密網(wǎng)站,一般有 SSL 或 TLS 加密功能(最高支持 128 位加密強(qiáng)度),端口一般為 443。
RTSP 代理,主要用于 Realplayer 訪問(wèn) Real 流媒體服務(wù)器,一般有緩存功能,端口一般為 554。
Telnet代理,主要用于 telnet 遠(yuǎn)程控制(黑客入侵計(jì)算機(jī)時(shí)常用于隱藏身份),端口一般為23。
POP3/SMTP 代理,主要用于 POP3/SMTP 方式收發(fā)郵件,一般有緩存功能,端口一般為 110/25。
SOCKS代理,只是單純傳遞數(shù)據(jù)包,不關(guān)心具體協(xié)議和用法,所以速度快很多,一般有緩存功能,端口一般為1080。SOCKS 代理協(xié)議又分為 SOCKS4 和 SOCKS5,SOCKS4 協(xié)議只支持 TCP,而 SOCKS5 協(xié)議支持 TCP 和 UDP,還支持各種身份驗(yàn)證機(jī)制、服務(wù)器端域名解析等。簡(jiǎn)單來(lái)說(shuō),SOCK4能做到的SOCKS5都可以做到,但SOCKS5能做到的SOCK4不一定能做到。
根據(jù)匿名程度區(qū)分根據(jù)代理的匿名程度劃分,代理可以分為如下類別:
高度匿名代理,高度匿名代理會(huì)將數(shù)據(jù)包原封不動(dòng)的轉(zhuǎn)發(fā),在服務(wù)端看來(lái)就好像真的是一個(gè)普通客戶端在訪問(wèn),而記錄的 IP 是代理服務(wù)器的 IP。
普通匿名代理,普通匿名代理會(huì)在數(shù)據(jù)包上做一些改動(dòng),服務(wù)端上有可能發(fā)現(xiàn)這是個(gè)代理服務(wù)器,也有一定幾率追查到客戶端的真實(shí) IP。代理服務(wù)器通常會(huì)加入的 HTTP 頭有 HTTP_VIA 和 HTTP_X_FORWARDED_FOR。
透明代理,透明代理不但改動(dòng)了數(shù)據(jù)包,還會(huì)告訴服務(wù)器客戶端的真實(shí) IP。這種代理除了能用緩存技術(shù)提高瀏覽速度,能用內(nèi)容過(guò)濾提高安全性之外,并無(wú)其他顯著作用,最常見的例子是內(nèi)網(wǎng)中的硬件防火墻。
間諜代理,間諜代理指組織或個(gè)人創(chuàng)建的,用于記錄用戶傳輸?shù)臄?shù)據(jù),然后進(jìn)行研究、監(jiān)控等目的代理服務(wù)器。
4. 常見代理設(shè)置使用網(wǎng)上的免費(fèi)代理,最好使用高匿代理,使用前抓取下來(lái)篩選一下可用代理,也可以進(jìn)一步維護(hù)一個(gè)代理池。
使用付費(fèi)代理服務(wù),互聯(lián)網(wǎng)上存在許多代理商,可以付費(fèi)使用,質(zhì)量比免費(fèi)代理好很多。
ADSL撥號(hào),撥一次號(hào)換一次 IP,穩(wěn)定性高,也是一種比較有效的解決方案。
在后文我們會(huì)詳細(xì)介紹這幾種代理的使用方式。
5. 參考來(lái)源由于涉及到一些專業(yè)名詞知識(shí),本節(jié)的部分內(nèi)容參考來(lái)源如下:
代理服務(wù)器 維基百科:https://zh.wikipedia.org/wiki...
代理 百度百科:https://baike.baidu.com/item/...
上一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---18、Session和Cookies
下一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---20、使用Urllib:發(fā)送請(qǐng)求
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/44049.html
摘要:而在中對(duì)象用來(lái)存儲(chǔ)特定用戶會(huì)話所需的屬性及配置信息。當(dāng)會(huì)話過(guò)期或被放棄后,服務(wù)器將終止該會(huì)話。,即該是否僅被使用安全協(xié)議傳輸。安全協(xié)議有,等,在網(wǎng)絡(luò)上傳輸數(shù)據(jù)之前先將數(shù)據(jù)加密。 上一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---17、爬蟲基本原理下一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---19、代理基本原理 在瀏覽網(wǎng)站的過(guò)程中我們經(jīng)常會(huì)遇到需要登錄的情況,有些頁(yè)面只有登錄之后我們才可以訪問(wèn)...
摘要:下面我們傳入多個(gè)參數(shù)構(gòu)建一個(gè)來(lái)感受一下在這里我們通過(guò)四個(gè)參數(shù)構(gòu)造了一個(gè),即請(qǐng)求,在中指定了和,傳遞的參數(shù)用了和方法來(lái)轉(zhuǎn)成字節(jié)流,另外指定了請(qǐng)求方式為。運(yùn)行結(jié)果如下通過(guò)觀察結(jié)果可以發(fā)現(xiàn),我們成功設(shè)置了,以及。用于處理重定向。 上一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---19、代理基本原理下一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---21、使用Urllib:處理異常 學(xué)習(xí)爬蟲,最初的操作便...
摘要:上一篇文章網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)部署相關(guān)庫(kù)的安裝下一篇文章網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)網(wǎng)頁(yè)基礎(chǔ)在寫爬蟲之前,還是需要了解一些爬蟲的基礎(chǔ)知識(shí),如原理網(wǎng)頁(yè)的基礎(chǔ)知識(shí)爬蟲的基本原理基本原理等。由萬(wàn)維網(wǎng)協(xié)會(huì)和工作小組共同合作制定的規(guī)范,目前廣泛使用的是版本。 上一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---14、部署相關(guān)庫(kù)的安裝:Scrapyrt、Gerapy下一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---16、Web網(wǎng)頁(yè)基礎(chǔ)...
摘要:時(shí)間永遠(yuǎn)都過(guò)得那么快,一晃從年注冊(cè),到現(xiàn)在已經(jīng)過(guò)去了年那些被我藏在收藏夾吃灰的文章,已經(jīng)太多了,是時(shí)候把他們整理一下了。那是因?yàn)槭詹貖A太亂,橡皮擦給設(shè)置私密了,不收拾不好看呀。 ...
摘要:點(diǎn)擊,即可進(jìn)入證書的安裝頁(yè)面。上一篇文章網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)庫(kù)的安裝下一篇文章網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)爬取相關(guān)庫(kù)的安裝的安裝 上一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---6、Web庫(kù)的安裝:Flask、Tornado下一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---8、APP爬取相關(guān)庫(kù)的安裝:MitmProxy的安裝 除了 Web 網(wǎng)頁(yè),爬蟲也可以對(duì) APP 的數(shù)據(jù)進(jìn)行抓取,APP 中的頁(yè)面要加載出來(lái),首先需...
閱讀 2225·2019-08-30 15:54
閱讀 1961·2019-08-30 13:49
閱讀 680·2019-08-29 18:44
閱讀 834·2019-08-29 18:39
閱讀 1118·2019-08-29 15:40
閱讀 1538·2019-08-29 12:56
閱讀 3153·2019-08-26 11:39
閱讀 3105·2019-08-26 11:37