Kies uw taal
Basiscursus Web Scraping met Python en Scrapy
Meer dan 2 miljoen studenten wereldwijd

Basiscursus Web Scraping met Python en Scrapy

Leer gegevens te verzamelen van elke website met Python en Scrapy — een van de krachtigste webscraping-frameworks die beschikbaar zijn. Deze cursus neemt je mee van het opzetten van de omgeving tot het bouwen van productierijpe spiders die omgaan met paginering, anti-botmaatregelen en JavaScript-gerenderde pagina's. Na afloop heb je een portfolioproject en de praktische vaardigheden om gegevensverzameling op schaal te automatiseren.

Dedika voor bedrijven

Wat je gaat leren:

  • Configureer een professionele Python- en Scrapy-ontwikkelomgeving vanaf de basis.

  • Bouw spiders die op paginanavigatie links volgen en automatisch volledige meerpaginasites crawlen.

  • Extraheer, schoon en sla gestructureerde gegevens op in CSV, JSON, SQLite en MongoDB.

  • Pas proxyrotatie, user-agent-spoofing en AutoThrottle toe om veelvoorkomende anti-scraping-verdedigingen te omzeilen.

  • Schraap JavaScript-gerenderde pagina's en single-page-applicaties met behulp van Playwright-integratie.

  • Ontwerp end-to-end scraping-projecten met herbruikbare pijplijnen, itemschema's en geautomatiseerde planning.

Hoe je praktisch studeert Basiscursus Web Scraping met Python en Scrapy

Hoe je oefent Basiscursus Web Scraping met Python en Scrapy

Voor bedrijven die hun team willen trainen

Bij Dedika voor bedrijven bevat de cursus oefeningen en voorbeelden die zijn afgestemd op jouw organisatie en precies zoals jouw bedrijf het nodig heeft.

Klik hier

Cursusinhoud

8 Hoofdstukken • 37 LessenDuur tussen 4 en 360 uren (jij beslist)

Hoofdstuk 1Bekijk details

Python- en Scrapy-omgevingsinstallatie

  • Les 1 • Virtuele omgevingen voor Python-projecten

    Creëer geïsoleerde virtuele omgevingen om projectafhankelijkheden netjes te beheren. Isolatie voorkomt pakketconflicten tussen meerdere projecten.

  • Les 2 • Code-editor-installatie voor Scrapy-projecten

    Configureer een code-editor met Python-ondersteuning, linting en syntaxishighlighting. De juiste tooling versnelt de ontwikkeling en vermindert syntaxisfouten.

  • Les 3 • Scrapy en zijn afhankelijkheden installeren

    Installeer Scrapy via pip en los veelvoorkomende afhankelijkheidsproblemen op. Een schone installatie bevestigt dat de omgeving klaar is voor spiderontwikkeling.

  • Les 4 • Python-installatie en -configuratie

    Installeer Python en configureer PATH-variabelen voor toegang via de opdrachtregel. Een correcte installatie hier voorkomt omgevingsfouten gedurende de hele cursus.

Hoofdstuk 2Bekijk details

Webfundamentals voor scrapers

  • Les 1 • Browser DevTools voor scraperonderzoek

    Gebruik de ontwikkelaarstools van de browser om elementen te inspecteren, netwerkverkeer te monitoren en selectoren te kopiëren. Deze onderzoeksworkflow voedt direct het spiderontwerp.

  • Les 2 • XPath-expressies voor geavanceerde selectie

    Schrijf XPath-expressies om door de DOM te navigeren met meer flexibiliteit dan CSS alleen. XPath kan complexe traversale patronen aan die CSS niet kan uitdrukken.

  • Les 3 • Hoe HTTP-verzoeken en -antwoorden werken

    Traceer de levenscyclus van een HTTP-verzoek van browser naar server en terug. Dit model verklaart wat Scrapy nabootst bij het ophalen van pagina's.

  • Les 4 • CSS-selectors voor data-targeting

    Gebruik CSS-selectorsyntaxis om specifieke elementen in een HTML-document aan te wijzen. Deze selectors zijn het voornaamste targetinginstrument in Scrapy-spiders.

  • Les 5 • HTML-structuur en de DOM

    Lees en interpreteer HTML-documenten als geneste boomstructuren. Het begrijpen van de DOM is essentieel voor het schrijven van nauwkeurige CSS- en XPath-selectors.

Hoofdstuk 3Bekijk details

Je eerste Scrapy-spider bouwen

  • Les 1 • Spiders uitvoeren en debuggen

    Voer spiders uit met het commando scrapy crawl en interpreteer de loguitvoer. Debugvaardigheden verminderen de tijd die wordt besteed aan kapotte spiders.

  • Les 2 • Anatomie van een Scrapy Spider-klasse

    Onderzoek de Spider-basisklasse en de vereiste attributen en methoden. Elke spider erft deze structuur, dus het beheersen ervan is fundamenteel.

  • Les 3 • Gegevens extraheren met selectors

    Pas CSS- en XPath-selectors toe binnen de parse-methode om tekst en attributen te extraheren. Nauwkeurige extractie is de kerneigenschap van elke spider.

  • Les 4 • Scrapy-projectstructuur uitgelegd

    Genereer een Scrapy-project en begrijp de rol van elk gegenereerd bestand. Kennis van de structuur voorkomt verkeerd geplaatste code en configuratiefouten.

Hoofdstuk 4Bekijk details

Scrapy-items en gegevensmodellering

  • Les 1 • Gegevensopschoning met processors

    Schrijf aangepaste processorfuncties om veldwaarden op te schonen, te casten en te normaliseren. Schone gegevens op loaderniveau verminderen de complexiteit van de downstream-pijplijn.

  • Les 2 • Scrapy-items definiëren

    Declareer Item-klassen met getypeerde velden om geschraapte records weer te geven. Items dwingen een consistent schema af in alle spiders van een project.

  • Les 3 • ItemLoaders gebruiken voor schone gegevens

    Pas ItemLoaders toe om invoer- en uitvoerverwerking op veldwaarden te automatiseren. Loaders scheiden extractielogica van opschoningslogica voor onderhoudbaarheid.

  • Les 4 • Geschraapte gegevens valideren

    Voeg veldvalidatie toe om misvormde records op te vangen voordat ze opslag bereiken. Vroege validatie voorkomt dat corrupte gegevens in pijplijnen terechtkomen.

Hoofdstuk 5Bekijk details

Meerdere pagina's en sites crawlen

  • Les 1 • Links volgen met Scrapy-verzoeken

    Yield scrapy.Request-objecten vanuit parse-methoden om de crawler de opdracht te geven aanvullende URL's op te halen. Linkvolgen is het mechanisme achter full-site crawls.

  • Les 2 • CrawlSpider gebruiken voor op regels gebaseerd crawlen

    Maak gebruik van de CrawlSpider-subklasse en Rule-objecten om linkvolgende patronen declaratief te definiëren. Rules verminderen boilerplate voor grote, gestructureerde sites.

  • Les 3 • Crawldiepte en -bereik beheren

    Configureer dieptelimieten en URL-filters om crawls gericht en efficiënt te houden. Bereikcontrole voorkomt op hol geslagen crawls die bronnen verspillen.

  • Les 4 • Paginatiestrategieën

    Detecteer en volg volgende-pagina-links bij genummerde en cursor-gebaseerde paginatieschema's. Het verwerken van paginatie ontsluit de extractie van de volledige dataset.

  • Les 5 • Gegevens doorgeven tussen verzoeken

    Gebruik de cb_kwargs- en meta-woordenboeken om context van het ene verzoek naar het volgende door te geven. Gedeelde context maakt assemblage van records over meerdere pagina's mogelijk.

Hoofdstuk 6Bekijk details

Scrapy-pijplijnen en gegevensopslag

  • Les 1 • Gegevens exporteren naar CSV en JSON

    Gebruik de ingebouwde feed-exporteurs van Scrapy om items naar platte bestanden te schrijven. Platte-bestandsexport is de snelste weg van spider naar bruikbare gegevens.

  • Les 2 • Aangepaste pijplijncomponenten schrijven

    Bouw pijplijnklassen die items opschonen, dedupliceren of verrijken vóór opslag. Aangepaste pijplijnen verwerken logica die exporteurs niet kunnen uitdrukken.

  • Les 3 • Gegevens opslaan in MongoDB

    Schrijf een pijplijn die items invoegt in een MongoDB-collectie met PyMongo. Documentopslag is geschikt voor geschraapte gegevens met variabele of geneste velden.

  • Les 4 • Gegevens opslaan in een SQL-database

    Verbind een pijplijn met een relationele database en voeg items rij voor rij in. Databaseopslag maakt query's en langetermijngegevensbeheer mogelijk.

  • Les 5 • De pijplijnarchitectuur begrijpen

    Traceer hoe items van spiders door geordende pijplijncomponenten stromen. Het begrijpen van deze stroom is noodzakelijk om effectieve verwerkingsketens te ontwerpen.

Hoofdstuk 7Bekijk details

Anti-scrapingmaatregelen aanpakken

  • Les 1 • Botdetectietechnieken begrijpen

    Catalogiseer de server-side signalen die worden gebruikt om geautomatiseerd verkeer te identificeren. Kennis van detectiemethoden vormt de basis voor de tegenmaatregelen in latere secties.

  • Les 2 • Verzoeken throttlen met AutoThrottle

    Schakel de AutoThrottle-extensie van Scrapy in om verzoeksnelheden aan te passen aan serverresponstijden. Beleefd crawlen vermindert het risico op snelheidslimietverboden.

  • Les 3 • User agents en headers roteren

    Configureer middleware om user-agent-strings en HTTP-headers per verzoek te randomiseren. Headerrotatie vermindert de vingerafdruk die botdetectie activeert.

  • Les 4 • Proxyrotatie gebruiken

    Routeer verzoeken via roterende proxypools om verkeer over meerdere IP-adressen te verdelen. Proxyrotatie is de primaire verdediging tegen IP-gebaseerde verboden.

  • Les 5 • Cookies en sessies beheren

    Beheer cookieafhandeling om sessies te behouden of verzoeken indien nodig te isoleren. Goed sessiebeheer voorkomt inlogmuurblokkades en sessiegebaseerde detectie.

Hoofdstuk 8Bekijk details

JavaScript-gerenderde pagina's scrapen

  • Les 1 • Oneindig scrollen en lazy loading verwerken

    Automatiseer scrollacties en activeer lazy-loadgebeurtenissen om verborgen content bloot te leggen. Deze technieken voltooien de datasetextractie op moderne feed-achtige pagina's.

  • Les 2 • JavaScript-gerenderde inhoud identificeren

    Onderscheid tussen server-gerenderde HTML en client-gerenderde inhoud voordat je een scrapestrategie kiest. Correcte identificatie voorkomt verspilde moeite aan de verkeerde aanpak.

  • Les 3 • Prestatie-afwegingen van browserautomatisering

    Vergelijk de snelheid, resourcekosten en betrouwbaarheid van headless browsers met directe HTTP-verzoeken. Geïnformeerde afwegingen houden projecten onderhoudbaar en efficiënt.

  • Les 4 • Scrapy integreren met Playwright

    Gebruik de scrapy-playwright-bibliotheek om JavaScript te renderen in de verzoekpijplijn van Scrapy. Playwright-integratie verwerkt sites waar API-interceptie niet haalbaar is.

  • Les 5 • API-oproepen direct onderscheppen

    Reverse-engineer de onderliggende API-verzoeken die een browser doet en roep ze direct aan met Scrapy. Directe API-oproepen zijn sneller en stabieler dan browserautomatisering.

Certificering

Jouw geldig certificaat van voltooiing

Deze cursus is voor jou:

  • Aspirant-data-analisten: hebben echte datasets nodig zonder afhankelijk te zijn van externe aanbieders.

  • Python-hobbyisten: klaar om verder te gaan dan tutorials en iets echt nuttigs te bouwen.

  • Freelance-ontwikkelaars: willen geautomatiseerde gegevensverzameling aanbieden als factureerbare dienst.

  • Carrièreswitchers: richten zich op data- of backendrollen en hebben een concreet portfolio-project nodig.

  • Onderzoekers en academici: moeten herhaaldelijk webgegevens verzamelen zonder handmatig kopiëren en plakken.

  • Kleine bedrijfseigenaren: willen concurrenten monitoren of marktinformatie automatisch aggregeren.

Wat onze studenten zeggen

Jullie lessen zijn perfect. Ik heb het jaarpakket aangeschaft en heb eindelijk de mogelijkheid om verschillende onderwerpen die mij interesseren te volgen zonder van platform te hoeven wisselen... bedankt voor alles wat jullie doen, ik heb jullie al aan anderen aanbevolen...
Giulio Carlo
Giulio CarloStudent Digitale Marketing
Ik vind het fijn hoe de lessen direct ter zake zijn en hoe ik tussen hoofdstukken kan wisselen en content kan overslaan die ik niet nodig heb.
Mariana Ferres
Mariana FerresStudent Fotografie
Ik vind de content en de manier van presenteren en transcriptie van video's geweldig, wat het proces versnelt!
Luciana Alvarenga
Luciana AlvarengaStudent Nageldesign
Het platform is snel en eenvoudig te gebruiken. De diversiteit aan content en de aanvullende video's helpen enorm bij het leren.
André Felipe
André FelipeStudent Prompt Engineering

Belangrijkste opleidingen

FAQ

Wie is Dedika?

Is het certificaat geldig in Nederland?

Zijn de cursussen gratis?

Wat is de studielast van de cursus?

Hoe zien de cursussen eruit?

Hoe werken de cursussen?

Wat is de duur van de cursussen?

Wat zijn de kosten of prijzen van de cursussen?

Wat is een EAD- of online cursus en hoe werkt het?

PDF-cursus