-
當(dāng)前位置:首頁(yè) > 創(chuàng)意學(xué)院 > 短視頻 > 專題列表 > 正文
爬蟲(chóng)爬取付費(fèi)資源(爬蟲(chóng)能爬付費(fèi)資源)
大家好!今天讓創(chuàng)意嶺的小編來(lái)大家介紹下關(guān)于爬蟲(chóng)爬取付費(fèi)資源的問(wèn)題,以下是小編對(duì)此問(wèn)題的歸納整理,讓我們一起來(lái)看看吧。
本文目錄:
一、python 爬蟲(chóng) ip池怎么做
Python爬蟲(chóng)采集信息都是采用IP進(jìn)行更改,不然就不能快速的爬取信息,可以加入采用這類方式,就失去了快速抓取的意義。
所以,如果要大批量的抓取信息,就不能避免的使用IP池,針對(duì)Python爬蟲(chóng)使用的IP池,是如何搭建起來(lái)的呢?接下來(lái)和大家說(shuō)明一下如何建爬蟲(chóng)IP池的問(wèn)題。
第一步:找IP資源
IP資源并不豐富,換句話說(shuō)是供不應(yīng)求的,因此一般是使用動(dòng)態(tài)IP。
免費(fèi)方法,直接在網(wǎng)絡(luò)上找,在搜索引擎中一搜索特別多能夠提供IP資源的網(wǎng)站,進(jìn)行采集即可。
付費(fèi)方法,通過(guò)購(gòu)買芝麻代理上的IP資源,并進(jìn)行提取,搭建IP池。
第二步,檢測(cè)可用IP保存
提取到的IP,可以進(jìn)一步進(jìn)行檢測(cè)是否可用,比如訪問(wèn)某個(gè)固定的網(wǎng)站,找出訪問(wèn)成功的IP進(jìn)行保存。
第三步,隨機(jī)調(diào)用IP
在爬蟲(chóng)需要使用IP時(shí),可用讀取保存IP的文件,進(jìn)行隨機(jī)調(diào)用IP。
本文介紹了如何建爬蟲(chóng)的IP池方法,可以說(shuō)搭建IP池很容易,可有些IP的時(shí)效性很短,使用之前還可以再測(cè)試一次的。如果考慮免費(fèi)IP,那么對(duì)于IP的效果性要做好心理準(zhǔn)備的。
二、有哪些網(wǎng)站用爬蟲(chóng)爬取能得到很有價(jià)值的數(shù)據(jù)
一般有一下幾種
一些常用的方法
IP代理
對(duì)于IP代理,各個(gè)語(yǔ)言的Native Request API都提供的IP代理響應(yīng)的API, 需要解決的主要就是IP源的問(wèn)題了.
網(wǎng)絡(luò)上有廉價(jià)的代理IP(1元4000個(gè)左右), 我做過(guò)簡(jiǎn)單的測(cè)試, 100個(gè)IP中, 平均可用的在40-60左右, 訪問(wèn)延遲均在200以上.
網(wǎng)絡(luò)有高質(zhì)量的代理IP出售, 前提是你有渠道.
因?yàn)槭褂肐P代理后, 延遲加大, 失敗率提高, 所以可以將爬蟲(chóng)框架中將請(qǐng)求設(shè)計(jì)為異步, 將請(qǐng)求任務(wù)加入請(qǐng)求隊(duì)列(RabbitMQ,Kafka,Redis), 調(diào)用成功后再進(jìn)行回調(diào)處理, 失敗則重新加入隊(duì)列. 每次請(qǐng)求都從IP池中取IP, 如果請(qǐng)求失敗則從IP池中刪除該失效的IP.
Cookies
有一些網(wǎng)站是基于cookies做反爬蟲(chóng), 這個(gè)基本上就是如 @朱添一 所說(shuō)的, 維護(hù)一套Cookies池
注意研究下目標(biāo)網(wǎng)站的cookies過(guò)期事件, 可以模擬瀏覽器, 定時(shí)生成cookies
限速訪問(wèn)
像開(kāi)多線程,循環(huán)無(wú)休眠的的暴力爬取數(shù)據(jù), 那真是分分鐘被封IP的事, 限速訪問(wèn)實(shí)現(xiàn)起來(lái)也挺簡(jiǎn)單(用任務(wù)隊(duì)列實(shí)現(xiàn)), 效率問(wèn)題也不用擔(dān)心, 一般結(jié)合IP代理已經(jīng)可以很快地實(shí)現(xiàn)爬去目標(biāo)內(nèi)容.
一些坑
大批量爬取目標(biāo)網(wǎng)站的內(nèi)容后, 難免碰到紅線觸發(fā)對(duì)方的反爬蟲(chóng)機(jī)制. 所以適當(dāng)?shù)母婢崾九老x(chóng)失效是很有必有的.
一般被反爬蟲(chóng)后, 請(qǐng)求返回的HttpCode為403的失敗頁(yè)面, 有些網(wǎng)站還會(huì)返回輸入驗(yàn)證碼(如豆瓣), 所以檢測(cè)到403調(diào)用失敗, 就發(fā)送報(bào)警, 可以結(jié)合一些監(jiān)控框架, 如Metrics等, 設(shè)置短時(shí)間內(nèi), 告警到達(dá)一定閥值后, 給你發(fā)郵件,短信等.
當(dāng)然, 單純的檢測(cè)403錯(cuò)誤并不能解決所有情況. 有一些網(wǎng)站比較奇葩, 反爬蟲(chóng)后返回的頁(yè)面仍然是200的(如去哪兒), 這時(shí)候往往爬蟲(chóng)任務(wù)會(huì)進(jìn)入解析階段, 解析失敗是必然的. 應(yīng)對(duì)這些辦法, 也只能在解析失敗的時(shí)候, 發(fā)送報(bào)警, 當(dāng)告警短時(shí)間到達(dá)一定閥值, 再觸發(fā)通知事件.
當(dāng)然這個(gè)解決部分并不完美, 因?yàn)橛袝r(shí)候, 因?yàn)榫W(wǎng)站結(jié)構(gòu)改變, 而導(dǎo)致解析失敗, 同樣回觸發(fā)告警. 而你并不能很簡(jiǎn)單地區(qū)分, 告警是由于哪個(gè)原因引起的.
三、網(wǎng)絡(luò)爬蟲(chóng)
1 爬蟲(chóng)技術(shù)研究綜述 引言? 隨著網(wǎng)絡(luò)的迅速發(fā)展,萬(wàn)維網(wǎng)成為大量信息的載體,如何有效地提取并利用這些信息成為一個(gè)巨大的挑戰(zhàn)。搜索引擎(Search Engine),例如傳統(tǒng)的通用搜索引擎AltaVista,Yahoo!和Google等,作為一個(gè)輔助人們檢索信息的工具成為用戶訪問(wèn)萬(wàn)維網(wǎng)的入口和指南。但是,這些通用性搜索引擎也存在著一定的局限性,如:? (1) 不同領(lǐng)域、不同背景的用戶往往具有不同的檢索目的和需求,通用搜索引擎所返回的結(jié)果包含大量用戶不關(guān)心的網(wǎng)頁(yè)。? (2) 通用搜索引擎的目標(biāo)是盡可能大的網(wǎng)絡(luò)覆蓋率,有限的搜索引擎服務(wù)器資源與無(wú)限的網(wǎng)絡(luò)數(shù)據(jù)資源之間的矛盾將進(jìn)一步加深。? (3) 萬(wàn)維網(wǎng)數(shù)據(jù)形式的豐富和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,圖片、數(shù)據(jù)庫(kù)、音頻/視頻多媒體等不同數(shù)據(jù)大量出現(xiàn),通用搜索引擎往往對(duì)這些信息含量密集且具有一定結(jié)構(gòu)的數(shù)據(jù)無(wú)能為力,不能很好地發(fā)現(xiàn)和獲取。? (4) 通用搜索引擎大多提供基于關(guān)鍵字的檢索,難以支持根據(jù)語(yǔ)義信息提出的查詢。? 為了解決上述問(wèn)題,定向抓取相關(guān)網(wǎng)頁(yè)資源的聚焦爬蟲(chóng)應(yīng)運(yùn)而生。聚焦爬蟲(chóng)是一個(gè)自動(dòng)下載網(wǎng)頁(yè)的程序,它根據(jù)既定的抓取目標(biāo),有選擇的訪問(wèn)萬(wàn)維網(wǎng)上的網(wǎng)頁(yè)與相關(guān)的鏈接,獲取所需要的信息。與通用爬蟲(chóng)(general?purpose web crawler)不同,聚焦爬蟲(chóng)并不追求大的覆蓋,而將目標(biāo)定為抓取與某一特定主題內(nèi)容相關(guān)的網(wǎng)頁(yè),為面向主題的用戶查詢準(zhǔn)備數(shù)據(jù)資源。? 1 聚焦爬蟲(chóng)工作原理及關(guān)鍵技術(shù)概述? 網(wǎng)絡(luò)爬蟲(chóng)是一個(gè)自動(dòng)提取網(wǎng)頁(yè)的程序,它為搜索引擎從萬(wàn)維網(wǎng)上下載網(wǎng)頁(yè),是搜索引擎的重要組成。傳統(tǒng)爬蟲(chóng)從一個(gè)或若干初始網(wǎng)頁(yè)的URL開(kāi)始,獲得初始網(wǎng)頁(yè)上的URL,在抓取網(wǎng)頁(yè)的過(guò)程中,不斷從當(dāng)前頁(yè)面上抽取新的URL放入隊(duì)列,直到滿足系統(tǒng)的一定停止條件,如圖1(a)流程圖所示。聚焦爬蟲(chóng)的工作流程較為復(fù)雜,需要根據(jù)一定的網(wǎng)頁(yè)分析算法過(guò)濾與主題無(wú)關(guān)的鏈接,保留有用的鏈接并將其放入等待抓取的URL隊(duì)列。然后,它將根據(jù)一定的搜索策略從隊(duì)列中選擇下一步要抓取的網(wǎng)頁(yè)URL,并重復(fù)上述過(guò)程,直到達(dá)到系統(tǒng)的某一條件時(shí)停止,如圖1(b)所示。另外,所有被爬蟲(chóng)抓取的網(wǎng)頁(yè)將會(huì)被系統(tǒng)存貯,進(jìn)行一定的分析、過(guò)濾,并建立索引,以便之后的查詢和檢索;對(duì)于聚焦爬蟲(chóng)來(lái)說(shuō),這一過(guò)程所得到的分析結(jié)果還可能對(duì)以后的抓取過(guò)程給出反饋和指導(dǎo)。? 相對(duì)于通用網(wǎng)絡(luò)爬蟲(chóng),聚焦爬蟲(chóng)還需要解決三個(gè)主要問(wèn)題:? (1) 對(duì)抓取目標(biāo)的描述或定義;? (2) 對(duì)網(wǎng)頁(yè)%B
四、15《Python 原生爬蟲(chóng)教程》爬蟲(chóng)和反爬蟲(chóng)
有的時(shí)候,當(dāng)我們的爬蟲(chóng)程序完成了,并且在本地測(cè)試也沒(méi)有問(wèn)題,爬取了一段時(shí)間之后突然就發(fā)現(xiàn)報(bào)錯(cuò)無(wú)法抓取頁(yè)面內(nèi)容了。這個(gè)時(shí)候,我們很有可能是遇到了網(wǎng)站的反爬蟲(chóng)攔截。
我們知道,網(wǎng)站一方面想要爬蟲(chóng)爬取網(wǎng)站,比如讓搜索引擎爬蟲(chóng)去爬取網(wǎng)站的內(nèi)容,來(lái)增加網(wǎng)站的搜索排名。另一方面,由于網(wǎng)站的服務(wù)器資源有限,過(guò)多的非真實(shí)的用戶對(duì)網(wǎng)站的大量訪問(wèn),會(huì)增加運(yùn)營(yíng)成本和服務(wù)器負(fù)擔(dān)。
這是一種最基本的反爬蟲(chóng)方式,網(wǎng)站運(yùn)營(yíng)者通過(guò)驗(yàn)證爬蟲(chóng)的請(qǐng)求頭的 User-agent,accep-enconding 等信息來(lái)驗(yàn)證請(qǐng)求的發(fā)出宿主是不是真實(shí)的用戶常用瀏覽器或者一些特定的請(qǐng)求頭信息。
通過(guò) Ajax,或 者javascript 來(lái)動(dòng)態(tài)獲取和加載數(shù)據(jù),加大爬蟲(chóng)直接獲取數(shù)據(jù)的難度。
這個(gè)相信大多數(shù)讀者非常熟悉了吧,當(dāng)我們輸錯(cuò)多次密碼的時(shí)候,很多平臺(tái)都會(huì)彈出各種二維碼讓我們識(shí)別,或者搶火車票的時(shí)候,會(huì)出現(xiàn)各種復(fù)雜的驗(yàn)證碼,驗(yàn)證碼是反爬蟲(chóng)措施中,運(yùn)用最廣,同時(shí)也是最有效直接的方式來(lái)阻止爬蟲(chóng)的措施之一。
在識(shí)別到某些異常的訪問(wèn)的時(shí)候,網(wǎng)站運(yùn)營(yíng)者會(huì)設(shè)置一個(gè)黑名單,把一些判定為爬蟲(chóng)的IP進(jìn)行限制或者封殺。
有些網(wǎng)站,沒(méi)有游客模式,只有通過(guò)注冊(cè)后才可以登錄看到內(nèi)容,這個(gè)就是典型的使用賬號(hào)限制網(wǎng)站,一般可以用在網(wǎng)站用戶量不多,數(shù)據(jù)安全要求嚴(yán)格的網(wǎng)站中。
我們可以在請(qǐng)求頭中替換我們的請(qǐng)求媒介,讓網(wǎng)站誤認(rèn)為是我們是通過(guò)移動(dòng)端的訪問(wèn),運(yùn)行下面的代碼后,當(dāng)我們打開(kāi) hupu.html,我們會(huì)發(fā)現(xiàn)返回的是移動(dòng)端的虎撲的頁(yè)面而不是網(wǎng)頁(yè)端的。
比如,我們可以設(shè)置一個(gè)隨機(jī)的間隔時(shí)間,來(lái)模擬用戶的行為,減少訪問(wèn)的次數(shù)和頻率。 我們可以在我們爬蟲(chóng)的程序中,加入如下的代碼,讓爬蟲(chóng)休息3秒左右,再進(jìn)行爬取,可以有效地避開(kāi)網(wǎng)站的對(duì)爬蟲(chóng)的檢測(cè)和識(shí)別。
代理就是通過(guò)訪問(wèn)第三方的機(jī)器,然后通過(guò)第三方機(jī)器的 IP 進(jìn)行訪問(wèn),來(lái)隱藏自己的真實(shí)IP地址。
由于第三方代理良莠不齊,而且不穩(wěn)定,經(jīng)常出現(xiàn)斷線的情況,爬取速度也會(huì)慢許多,如果對(duì)爬蟲(chóng)質(zhì)量有嚴(yán)格要求的話,不建議使用此種方法進(jìn)行爬取。
可以通過(guò)動(dòng)態(tài)的 IP 撥號(hào)服務(wù)器來(lái)變換 IP,也可以通過(guò) Tor 代理服務(wù)器來(lái)變換 IP。
反反爬蟲(chóng)的策略,一直是在變換的,我們應(yīng)該具體問(wèn)題具體分析,通過(guò)不斷的試錯(cuò)來(lái)完善我們的爬蟲(chóng)爬取,千萬(wàn)不要以為,爬蟲(chóng)程序在本機(jī)調(diào)試之后,沒(méi)有問(wèn)題,就可以高枕無(wú)憂了。線上的問(wèn)題,總是千變?nèi)f化,我們需要根據(jù)我們的具體反爬措施,來(lái)針對(duì)的寫一些反反爬蟲(chóng)的代碼,這樣才能保證線上環(huán)境的萬(wàn)無(wú)一失。
以上就是關(guān)于爬蟲(chóng)爬取付費(fèi)資源相關(guān)問(wèn)題的回答。希望能幫到你,如有更多相關(guān)問(wèn)題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
爬蟲(chóng)抖音ID獲取手機(jī)號(hào)(怎么爬取抖音用戶手機(jī)號(hào))
永久免費(fèi)代理ip(爬蟲(chóng)代理ip購(gòu)買)
錦州屋頂綠化景觀設(shè)計(jì)(錦州屋頂綠化景觀設(shè)計(jì)招標(biāo))
船外機(jī)排行榜(國(guó)產(chǎn)船外機(jī)排行榜)