การสืบทอดจาก Spider
เมื่อเรียนรู้เกี่ยวกับ spider ใน scrapy จะเห็นว่าส่วนหลักของโค้ดที่ต้องปรับแต่งคือ class ของ spider เพื่อให้คุ้นเคยกับ class มากขึ้น แบบฝึกหัดนี้ให้เติมโค้ดส่วนที่ขาดหายไปเพื่อสร้าง spider class อย่างง่าย โดยละเว้นโค้ดที่ใช้รัน spider จริง และเหลือเฉพาะส่วนที่จำเป็นสำหรับการสร้าง class
ดังที่กล่าวไว้ในบทเรียน class คือการรวมตัวแปรและฟังก์ชันที่เกี่ยวข้องกันไว้ในที่เดียวกัน บางครั้ง class หนึ่งต้องการใช้เมธอดจากอีก class หนึ่ง เราจึงสืบทอด (inherit) เมธอดจาก class อื่น ซึ่งนั่นคือสิ่งที่เกิดขึ้นใน spider class นี้
เราเขียนฟังก์ชัน inspect_class ไว้เพื่อตรวจสอบ class ที่สร้างขึ้นเมื่อทำเสร็จแล้ว หากต้องการทดสอบคำตอบ!
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Web Scraping ด้วย Python
คำแนะนำการฝึกหัด
- ส่ง
scrapy.Spiderเป็นอาร์กิวเมนต์ให้กับ classYourSpiderเพื่อให้YourSpiderสืบทอด (inherit) เมธอดจากscrapy.Spider
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Import scrapy library
import scrapy
# Create the spider class
class YourSpider(____):
name = "your_spider"
# start_requests method
def start_requests(self):
pass
# parse method
def parse(self, response):
pass
# Inspect Your Class
inspect_class(YourSpider)