
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.
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.
Cursusinhoud
8 Hoofdstukken • 37 LessenDuur tussen 4 en 360 uren (jij beslist)
Hoofdstuk 1VerbergenVerberg detailsBekijk detailsPython- en Scrapy-omgevingsinstallatie
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 2VerbergenVerberg detailsBekijk detailsWebfundamentals voor scrapers
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 3VerbergenVerberg detailsBekijk detailsJe eerste Scrapy-spider bouwen
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 4VerbergenVerberg detailsBekijk detailsScrapy-items en gegevensmodellering
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 5VerbergenVerberg detailsBekijk detailsMeerdere pagina's en sites crawlen
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 6VerbergenVerberg detailsBekijk detailsScrapy-pijplijnen en gegevensopslag
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 7VerbergenVerberg detailsBekijk detailsAnti-scrapingmaatregelen aanpakken
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 8VerbergenVerberg detailsBekijk detailsJavaScript-gerenderde pagina's scrapen
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.
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...

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.

Ik vind de content en de manier van presenteren en transcriptie van video's geweldig, wat het proces versnelt!

Het platform is snel en eenvoudig te gebruiken. De diversiteit aan content en de aanvullende video's helpen enorm bij het leren.

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




















