記錄下容易出錯的地方
from movie.items import movieitem
#資料夾.檔名 引入 類名
import scrapy
from
..items import movieitem
class
shuichanspider
(scrapy.spider)
: name =
'shuichan'
allowed_domains =
['bbs.liyang-tech.com'
] start_urls =
['']def
parse
(self,response)
: urls =
['&page=%s'
%(i)
for i in
range(1
,51)]
for i in urls:
yield response.follow(i,self.parse_title)
#方法名不要帶括號
defparse_title
(self,response)
: item = movieitem(
) txt = response.xpath(
'//*/tr/th/a[2]/text()'
).extract(
)for i in txt:
item[
'title'
]= i
yield item
第二個引數是提交乙個方法,不要打括號,否則報錯
我們經常用scrapy內建的xpath來解析頁面,獲取想要的資訊,但xpath解析的返回值是乙個selector物件,不能直接與str物件進行運算,需要先呼叫extract()函式來將其變成unicode編碼,之後就能與str物件進行運算了。
解析完畢後一定要返回資料,否則啥也沒有的
先例項化items檔案中的類,然後最後返回解析的資料
item = movieitem(
)
最後返回item
settings.py 是整個專案的配置檔案,這個檔案裡可以設定爬取併發個數、等待時間、輸出格式、預設 header 等等。這次我們可以寫一些配置如:
bot_name =
spider_modules =
newspider_module =
# crawl responsibly by identifying yourself (and your website) on the user-agent
# obey robots.txt rules
robotstxt_obey =
true
# 上面都是自動生成的,下面開始是我們自己定義的
# 要使用的 pipeline
item_pipelines =
feed_format =
'csv'
# 最後輸出的檔案格式
feed_uri =
# 最後輸出的檔名
# 為了避免對被爬**造成太大的壓力,我們啟動自動限速,設定最大併發數為 5
autothrottle_enabled =
true
autothrottle_target_concurrency =
5
一定要注意大小寫 和拼寫
比如txt 檔案格式,這樣就錯了
scrapy不支援這個格式,csv可以
Python高階爬蟲框架Scrapy簡介
scrapy 框架 scrapy是用純python實現乙個為了爬取 資料 提取結構性資料而編寫的應用框架,用途非常廣泛。框架的力量,使用者只需要定製開發幾個模組就可以輕鬆的實現乙個爬蟲,用來抓取網頁內容以及各種,非常之方便。scrapy架構圖 綠線是資料流向 95625f65089e4bc98a26...
python的高階爬蟲框架Scrapy
眾所周知,scrapy 是乙個高階的python爬蟲框架,功能極其強大,擁有它就可以快速編寫出乙個爬蟲專案,擁有它就可以搭建分布式架構。那麼,請問這麼強大的框架要怎麼擁有?很簡單,由於我只嘗試了windows平台下的安裝,所以下文也是該平台下的安裝步驟。windows的安裝是比較常見的,相對其他兩種...
scrapy爬蟲框架
作者經過幾周的python爬蟲實踐之後,深入學習了一下scrapy這個爬蟲框架,現將一些基本知識和 總結整理一下,以備後查。2.scrapy的命令列使用 這部分網上很多部落格都有總結,不需要背,理解會用主要的命令 startproject crawl fetch list genspider.即可,...