Skip to main content

scrapy-web-scraping

Framework de scraping web más popular de Python — extensible, asíncrono, con middleware, pipelines y scraping a escala.

الانتقال إلى التثبيت

معلومات المصدر

المستودع
Ntizar/NtizarBrainMasterMind
آخر نشاط في المصدر
١٦ يوليو ٢٠٢٦ في ٠٨:٠٢
لغة SKILL.md المكتشفة
غير محددة
النجوم
٢
التفرعات
٠

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
scrapy-web-scraping
description
Framework de scraping web más popular de Python — extensible, asíncrono, con middleware, pipelines y scraping a escala.
version
1.0.0
tags
["scraping","web","python","async","crawler","middleware"]
# Scrapy — Framework de Scraping Web ## Resumen Framework de scraping web más popular de Python — extensible, asíncrono, con middleware y pipelines. 62k⭐. ## Repo de referencia - **GitHub:** `github.com/scrapy/scrapy` - **Lenguaje:** Python - **Licencia:** BSD ## Instalación ```bash pip install scrapy pip install scrapy-splash # para JavaScript rendering pip install scrapy-redis # para distributed scraping ``` ## Uso Básico ```python # spider.py import scrapy class ExampleSpider(scrapy.Spider): name = "example" start_urls = ["https://example.com"] def parse(self, response): for href in response.css("a::attr(href)").getall(): yield response.follow(href, self.parse) yield { 'title': response.css('h1::text').get(), 'text': response.css('p::text').getall(), } ``` ## Ejecutar ```bash # Salida JSON scrapy crawl example -o results.json # Salida CSV scrapy crawl example -o results.csv # Con logging detallado scrapy crawl example -s LOG_LEVEL=DEBUG ``` ## Patrones Clave 1. **Middlewares:** Rotación de user-agents, proxies, headers 2. **Pipelines:** Guardar en SQLite, MongoDB, PostgreSQL 3. **Item Loaders:** Transformación y validación de datos 4. **Distributed:** Scrapy-Redis para scraping distribuido 5. **Headless browser:** Splash o Playwright para JS rendering ## Integración con Mastermind - Reemplaza `BeautifulSoup` + `requests` para scraping a escala - Ideal para government data pipelines (BOE, BORME, etc.) - Complementa `firecrawl-web-scraping` (scrapy programable, firecrawl API-based) - Útil para static-digest-pipeline ## Pitfalls - **JavaScript:** Scrapy no ejecuta JS. Usa Splash o Playwright para contenido dinámico. - **Rate limiting:** Configurar `DOWNLOAD_DELAY` para no saturar servidores. - **Robots.txt:** Respetar robots.txt con `ROBOTSTXT_OBEY = True`. - **Memory:** Para sitios grandes, usar `itemproc` con pipelines asíncronos. ## Referencias - [GitHub: scrapy/scrapy](https://github.com/scrapy/scrapy) - [Docs](https://docs.scrapy.org)
عرض على GitHub