開始使用免費開始

自我參照很有「類」

你可能已經注意到,在蜘蛛類別裡,我們在 start_requestsparse 方法都會放入參數 self(就看一下本練習的範例程式碼吧!)。這讓我們能在同一個類別中相互參照方法。也就是說,如果我們想在 start_requests 方法裡引用 parse 方法,就需要寫成 self.parse,而不是只寫 parse;加入 self 的作用是告訴程式碼:「到與 start_requests 相同的類別裡,找到名為 parse 的方法來用。」

在這個練習中,你會實際操作這種「自我參照」。

本練習屬於課程

Python 網頁爬蟲

檢視課程

練習說明

  • 在類別 YourSpider 中補上建立 scrapy 蜘蛛所需、繼承的 scrapy 物件。
  • start_requests 方法中,將字串引數 "Hello World!" 傳給 print_msg 的呼叫,填入空格。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Import scrapy library
import scrapy

# Create the spider class
class YourSpider( ____ ):
  name = "your_spider"
  # start_requests method
  def start_requests( self ):
    self.print_msg( ____ )
  # parse method
  def parse( self, response ):
    pass
  # print_msg method
  def print_msg( self, msg ):
    print( "Calling start_requests in YourSpider prints out:", msg )
  
# Inspect Your Class
inspect_class( YourSpider )
編輯並執行程式碼