Scrapy
فریمورک قدرتمند وباسکرپینگ با پایتون
Scrapy یک فریمورک متنباز و سریع برای استخراج داده از وبسایتهاست. با معماری غیرهمزمان (async)، سیستم میانافزار (middleware)، و پایپلاینهای پردازش داده، Scrapy ابزار حرفهایها برای کراول و اسکرپ وب است.
import scrapy class QuotesSpider(scrapy.Spider): name = "quotes" start_urls = ['https://quotes.toscrape.com'] def parse(self, response): for quote in response.css('div.quote'): yield { 'text': quote.css('span.text::text').get(), 'author': quote.css('small.author::text').get(), }
معرفی
Scrapy چیست؟
Scrapy یک فریمورک کامل برای وباسکرپینگ و خزیدن در وب است که با پایتون نوشته شده. از سال ۲۰۰۸ توسعه یافته و امروزه یکی از پرکاربردترین ابزارها در حوزه جمعآوری داده است.
سریع و کارآمد
Scrapy بهصورت ناهمزمان (async) درخواستها را مدیریت میکند و میتواند هزاران صفحه را در دقیقه پردازش کند.
معماری ماژولار
با Spider، Pipeline، Middleware و Selector هر بخش از فرآیند اسکرپ را جداگانه کنترل و سفارشیسازی کنید.
انتخابگرهای قدرتمند
از CSS Selector و XPath برای استخراج دقیق عناصر HTML استفاده کنید. XPath انعطافپذیری بیشتری برای ساختارهای پیچیده دارد.
خروجیهای متنوع
دادههای استخراجشده را به JSON، CSV، XML یا پایگاهدادههای MongoDB و PostgreSQL صادر کنید.
مدیریت درخواست
سیستم داخلی Scrapy صف درخواستها، تلاش مجدد، تأخیر و رعایت robots.txt را بهصورت خودکار مدیریت میکند.
اکوسیستم گسترده
افزونههایی مثل Scrapy-Splash، Scrapy-Playwright و Scrapy-Redis قابلیتهای پیشرفتهتری مثل رندر JavaScript و توزیعشده را فراهم میکنند.
منابع آموزشی
از کجا شروع کنیم؟
دو راهنمای جامع فارسی برای یادگیری XPath و Scrapy — از مبتدی تا پیشرفته.
آموزش XPath
راهنمای کامل XPath به فارسی — انتخابگرها، محورها، پیششرطها، توابع و مثالهای کاربردی برای استخراج داده از HTML. ترجمه و بومیسازی شده از devhints.io/xpath.
مشاهده راهنما ← آموزش کاملآموزش Scrapy
مستندات جامع فارسی Scrapy — نصب، ساخت پروژه، Spider، Item، Pipeline، Middleware، تنظیمات و بهترین شیوهها برای نوشتن اسکرپرهای حرفهای.
شروع یادگیری ←