初級爬蟲工程師:
Web前端的知識:HTML, CSS, JavaScript, DOM, DHTML, Ajax, jQuery,json等;
正則表達(dá)式,能提取正常一般網(wǎng)頁中想要的信息,比如某些特殊的文字,鏈接信息,知道什么是懶惰,什么是貪婪型的正則;
會使用re, BeautifulSoup,XPath等獲取一些DOM結(jié)構(gòu)中的節(jié)點信息;
知道什么是深度優(yōu)先,廣度優(yōu)先的抓取算法,及實踐中的使用規(guī)則;
能分析簡單網(wǎng)站的結(jié)構(gòu),會使用urllib,urllib2或requests庫進行簡單的數(shù)據(jù)抓取;
中級爬蟲工程師:
了解什么是Hash,會使用簡單的MD5,SHA1等算法對數(shù)據(jù)進行Hash以便存儲;
熟悉HTTP,HTTPS協(xié)議的基礎(chǔ)知識,了解GET,POST方法,了解HTTP頭中的信息,包括返回狀態(tài)碼,編碼,user-agent,cookie,session等;
能設(shè)置User-Agent進行數(shù)據(jù)爬取,設(shè)置代理等;
知道什么是Request,什么是Response,會使用Fiddle, Wireshark等工具抓取及分析簡單的網(wǎng)絡(luò)數(shù)據(jù)包;對于動態(tài)爬蟲,要學(xué)會分析Ajax請求,模擬制造Post數(shù)據(jù)包請求,抓取客戶端session等信息,對于一些簡單的網(wǎng)站,能夠通過模擬數(shù)據(jù)包進行自動登錄;
對于比較難搞定的網(wǎng)站,學(xué)會使用瀏覽器+selenium抓取一些動態(tài)網(wǎng)頁信息;
并發(fā)下載,通過并行下載加速數(shù)據(jù)抓取;多線程的使用;
高級爬蟲工程師:
能使用Tesseract,百度AI,HOG+SVM,CNN等庫進行驗證碼識別;
能使用數(shù)據(jù)挖掘的技術(shù),分類算法等避免死鏈等;
會使用常用的數(shù)據(jù)庫進行數(shù)據(jù)存儲,查詢,如Mongodb,Redis(大數(shù)據(jù)量的緩存)等;下載緩存,學(xué)習(xí)如何通過緩存避免重復(fù)下載的問題;Bloom Filter的使用;
能使用機器學(xué)習(xí)的技術(shù)動態(tài)調(diào)整爬蟲的爬取策略,從而避免被禁IP封號等;
能使用一些開源框架Scrapy,Celery等分布式爬蟲,能部署掌控分布式爬蟲進行大規(guī)模的數(shù)據(jù)抓取;
-
工程師
+關(guān)注
關(guān)注
59文章
1571瀏覽量
68562 -
網(wǎng)絡(luò)爬蟲
+關(guān)注
關(guān)注
1文章
52瀏覽量
8704
發(fā)布評論請先 登錄
相關(guān)推薦
評論