開始使用免費開始

開始爬行

這是你第一次實際操作能在網站之間爬行的蜘蛛(先從一個網站收集連結,再沿著這些連結去剖析新的網站)。這個蜘蛛會從縮短版的 DataCamp 課程目錄開始,在 parse 方法中擷取課程的連結;接著,它會追蹤這些連結,在 parse_descr 方法中從各課程頁面擷取課程描述,並把這些描述放進清單 course_descrs。你的任務是補齊程式碼,讓蜘蛛能按預期執行!

我們已經建立好 inspect_spider 函式,若你做對了,它會列印出你爬到的其中一個課程描述!

本練習屬於課程

Python 網頁爬蟲

檢視課程

練習說明

  • 在下面的兩個空格處(各在一個剖析方法中)填入正確的參數,讓蜘蛛能正確地從第一個剖析方法移動到第二個。

動手互動練習

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

# Import the scrapy library
import scrapy

# Create the Spider class
class DCdescr( scrapy.Spider ):
  name = 'dcdescr'
  # start_requests method
  def start_requests( self ):
    yield scrapy.Request( url = url_short, callback = self.parse )
  
  # First parse method
  def parse( self, response ):
    links = response.css( 'div.course-block > a::attr(href)' ).extract()
    # Follow each of the extracted links
    for link in links:
      yield ____
      
  # Second parsing method
  def parse_descr( ____ ):
    # Extract course description
    course_descr = response.css( 'p.course__description::text' ).extract_first()
    # For now, just yield the course description
    yield course_descr


# Inspect the spider
inspect_spider( DCdescr )
編輯並執行程式碼