Scrapy - แมงมุมตัวแรก

คำอธิบาย

Spider เป็นคลาสที่กำหนด URL เริ่มต้นเพื่อดึงข้อมูลวิธีการติดตามลิงก์การแบ่งหน้าและวิธีแยกและแยกวิเคราะห์ฟิลด์ที่กำหนดใน items.py. Scrapy ให้แมงมุมประเภทต่างๆซึ่งแต่ละชนิดมีวัตถุประสงค์เฉพาะ

สร้างไฟล์ชื่อ "first_spider.py"ภายใต้ไดเร็กทอรี first_scrapy / spiders ซึ่งเราสามารถบอก Scrapy ได้ว่าจะหาข้อมูลที่ต้องการได้อย่างไร สำหรับสิ่งนี้คุณต้องกำหนดคุณลักษณะบางอย่าง -

  • name - กำหนดชื่อเฉพาะสำหรับแมงมุม

  • allowed_domains - มี URL พื้นฐานสำหรับสไปเดอร์ในการรวบรวมข้อมูล

  • start-urls - รายการ URL ที่แมงมุมเริ่มรวบรวมข้อมูล

  • parse() - เป็นวิธีการที่แยกและแยกวิเคราะห์ข้อมูลที่คัดลอกมา

รหัสต่อไปนี้แสดงให้เห็นว่ารหัสแมงมุมมีลักษณะอย่างไร -

import scrapy  

class firstSpider(scrapy.Spider): 
   name = "first" 
   allowed_domains = ["dmoz.org"] 
   
   start_urls = [ 
      "http://www.dmoz.org/Computers/Programming/Languages/Python/Books/", 
      "http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/" 
   ]  
   def parse(self, response): 
      filename = response.url.split("/")[-2] + '.html' 
      with open(filename, 'wb') as f: 
         f.write(response.body)