使用scrapy的定製爬蟲-第一章-前言

這個系列文章還在逐步完成中,可能會屢次編輯 javascript

這是一個系列文章,關於定製爬蟲,使用scrapy. html

這是前言. java

爬蟲,最廣爲所知用途是搜索引擎的網頁抓取.也有不少其餘的用途.
諸如各種比價網站(etao,惠惠購物助手等),信息聚合,採集站等等.這種爬蟲不像通用的搜索引擎爬蟲,他們每每有各自的目的,例如比價網站,其爬蟲週期性的從網上獲取物品的價格信息.信息聚合站點將一類信息經過爬蟲採集後呈現. python

在幾年前比價這個概念還不像如今這樣普遍時,我在一個羣裏聽人說及他正在開發一個購物比價的產品.想着這難度仍是不小的.不肯定那時是否有各種成熟的框架或示例供參考.他要實現一個下載調度,解析內容,爬取策略,等等等等.實際上我當時感受,最大的難點在於,被爬取網站每改版一次,他的解析器就得重寫一次,很是麻煩.但實際上網站的改版不會如此頻繁,解析內容部分對應修改便可.略驚訝的是,比價這個概念,在2000年左右就有了(若是沒記錯我是在http權威指南的某部分看到的). web

最近我玩了一下爬蟲.在此以前,我對http,web相關規範,web自動化(用於測試,我用這個來寫web機器人.)也有必定了解. 框架

在這個過程當中遇到了一系列的問題.包括
1,javascript動態生成內容處理.
2,html,http等相關規範及細節問題.
3,調度,效率等.
4,大規模爬取相關...
etc...
這個系列文章將涉及這些問題.這篇文章並非doc,tutorial性質.更多的是講解實際問題.看以前你須要較爲了解scrapy.若是你在使用scrapy定製一個你本身的爬蟲,你會發現這篇文章有用之處. scrapy

爲何是scrapy,答案很簡單,我比較擅長python,scrapy是一個python的爬蟲框架.以scrape,spider,crawl之類關鍵字到pypi,google去搜索,還會找到其餘一些python的爬蟲框架.對於絕大多數場景,scrapy足夠好.當你瞭解足夠多以爲或許該看下其餘python的爬蟲框架時,你能夠參考下gcrawler,它更輕.一個特性是gcrawler沒有實現相似scrapy的downloader部分,所以每一個request須要你自行處理如何獲得對應response.這在某些時候更方便. ide

相關文章
相關標籤/搜索