แมงมุมขี้ขลาด
สไปเดอร์สไปเดอร์สเป็นคลาสที่อำนวยความสะดวกในการติดตามลิงก์ของเว็บไซต์และดึงข้อมูลออกจากหน้าเว็บ
นี่คือคลาสหลักที่สไปเดอร์ตัวอื่นต้องสืบทอดมา
Scrapinghub
Scrapinghub เป็นแอปพลิเคชั่นโอเพ่นซอร์สเพื่อเรียกใช้สไปเดอร์ Scrapy Scrapinghub เปลี่ยนเนื้อหาเว็บให้เป็นข้อมูลหรือข้อมูลที่เป็นประโยชน์ ช่วยให้เราดึงข้อมูลจากหน้าเว็บได้แม้กระทั่งหน้าเว็บที่ซับซ้อน
เราจะใช้ scrapinghub เพื่อปรับใช้สไปเดอร์สไปเดอร์บนคลาวด์และดำเนินการได้
ขั้นตอนในการปรับใช้สไปเดอร์บน scrapinghub -
ขั้นที่ 1 -
สร้างโปรเจ็กต์ที่น่าขยะแขยง -
หลังจากติดตั้ง scrapy แล้ว ให้รันคำสั่งต่อไปนี้ในเทอร์มินัลของคุณ -
$scrapy startproject <project_name>
เปลี่ยนไดเรกทอรีของคุณเป็นโครงการใหม่ของคุณ (project_name)
ขั้นตอนที่ 2 -
เขียนสไปเดอร์สไปเดอร์ตัวหนึ่งสำหรับเว็บไซต์เป้าหมายของคุณ ลองใช้เว็บไซต์ปกติ "quotes.toscrape.com"
ด้านล่างนี้คือแมงมุมตัวเล็กๆ ของฉัน -
รหัส −
#import scrapy library import scrapy class AllSpider(scrapy.Spider): crawled = set() #Spider name name = 'all' #starting url start_urls = ['https://www.tutorialspoint.com/'] def __init__(self): self.links = [] def parse(self, response): self.links.append(response.url) for href in response.css('a::attr(href)'): yield response.follow(href, self.parse)
ขั้นตอนที่ 3 -
เรียกใช้สไปเดอร์ของคุณและบันทึกผลลัพธ์ไปยังไฟล์ links.json ของคุณ -
หลังจากรันโค้ดด้านบนแล้ว คุณจะสามารถขูดลิงก์ทั้งหมดและบันทึกไว้ในไฟล์ links.json นี่อาจไม่ใช่กระบวนการที่ใช้เวลานาน แต่เพื่อให้ทำงานอย่างต่อเนื่องตลอด 24 ชั่วโมง (24/7) เราจำเป็นต้องปรับใช้สไปเดอร์นี้บน Scrapinghub
ขั้นตอนที่ 4 -
การสร้างบัญชีบน Scrapinghub
เพื่อที่คุณจะต้องลงชื่อเข้าใช้หน้าเข้าสู่ระบบของ ScrapingHub โดยใช้บัญชี Gmail หรือ Github ของคุณ มันจะเปลี่ยนเส้นทางไปยังแดชบอร์ด
ตอนนี้คลิกที่สร้างโครงการและระบุชื่อโครงการ ตอนนี้ เราสามารถเพิ่มโปรเจ็กต์ของเราไปยังคลาวด์ได้โดยใช้ command line (CLI) หรือผ่าน github ต่อไปเราจะปรับใช้รหัสของเราผ่าน shub CLI ขั้นแรกให้ติดตั้ง shub
$pip install shub
หลังจากติดตั้ง shub แล้ว ให้ลงชื่อเข้าใช้บัญชี shub โดยใช้คีย์ api ที่สร้างขึ้นจากการสร้างบัญชี (ป้อนคีย์ API ของคุณจาก https://app.scrapinghub.com/account/apikey)
$shub login
หากคีย์ API ของคุณใช้ได้ แสดงว่าคุณเข้าสู่ระบบแล้ว ตอนนี้ เราจำเป็นต้องปรับใช้โดยใช้รหัสการนำไปใช้ ซึ่งคุณจะเห็นในส่วนบรรทัดคำสั่งของส่วน "ปรับใช้โค้ดของคุณ" (ตัวเลข 6 หลัก)
$ shub deploy deploy_id
นั่นคือจากบรรทัดคำสั่ง ตอนนี้ย้ายกลับบนส่วนแดชบอร์ดของ Spiders ผู้ใช้สามารถเห็นสไปเดอร์ที่พร้อม เพียงคลิกที่ชื่อแมงมุมและปุ่มเรียกใช้ เพียงเท่านี้คุณก็จะเห็นแมงมุมของคุณในแดชบอร์ด เช่น −
มันจะแสดงให้เราเห็นถึงความคืบหน้าในการทำงานด้วยการคลิกเพียงครั้งเดียว และคุณไม่จำเป็นต้องเรียกใช้เครื่องในพื้นที่ของคุณตลอด 24 ชั่วโมงทุกวัน