golang學習筆記17 爬蟲技術路線圖,python,java,nodejs,go語言,scrapy主流架構介紹
go語言爬蟲架構:
gocolly/colly,goquery,colly,chromedp,webloop,go_spider,Pholcus
https://github.com/hu17889/go_spider
Pholcus 幽靈蛛重量級爬蟲軟體(含3種操作介面) - Golang中國
https://www.golangtc.com/p/557473c9b09ecc2aa700000b
henrylee2cn/pholcus_lib: 公用維護的Pholcus爬蟲規則庫
https://github.com/henrylee2cn/pholcus_lib
python,封裝好的架構scrapy,其他常用,urllib2,解析用的包的beautifulsoup,配合selenium。以上是隨便爬爬。
大型的分布式爬取,痛點一個在反反爬,動態ip池,接打碼,爬蟲行為模式控制,是個體力活;
另一個在爬取和落盤的效率,所以到了一定規模分布式一般用go/java/scala多
用python的scrapy,所有平台都能跑,scrapy是主流方案,各種周邊都很成熟,爬視頻python有現成的包
python的pyspider架構比較完善,抓取大量網站,解析大量頁面時做分布式和後台管理都比較方便
java爬蟲配合jsoup也是不錯的選擇
nodejs主要架構有cheerio、crawler、spiderman:
用nodejs爬指定的少量網站,用request加cheerio就足夠了
cheerio | Fast, flexible, and lean implementation of core jQuery designed specifically for the server.
https://cheerio.js.org/
crawler - npm
https://www.npmjs.com/package/crawler
ltebean/spiderman: a crawler with visualized config board
https://github.com/ltebean/spiderman