Stop guessing what′s working and start seeing it for yourself.
Login or register
Q&A
Question Center →

Semalt: Web Scraping met Python

Heb je een van die angstaanjagende momenten meegemaakt waarin je geen wifi hebt. Als dat zo is, dan heb je je gerealiseerd hoeveel van wat je doet op je computer afhankelijk is van het net. Gewoonlijk zul je merken dat je je e-mails controleert, de Instagram-foto's van je vrienden bekijkt en hun tweets leest.

Aangezien zo veel computerwerk de webprocessen omvat, zou het erg handig zijn als uw programma's ook online zouden kunnen gaan. Dit is het geval voor webschrapen. Het gaat om het gebruik van een programma om inhoud van internet te downloaden en te verwerken. Google gebruikt bijvoorbeeld verschillende scraping-programma's om webpagina's te indexeren voor hun zoekmachine.

Er zijn veel manieren waarop u gegevens van internet kunt schrapen. Veel van deze methoden vereisen de beheersing van een verscheidenheid aan programmeertalen zoals Python en R. Bijvoorbeeld, met Python, kunt u een aantal modules gebruiken zoals Verzoeken, Mooie soep, Webbrowser en Selenium.

De module 'Verzoeken' biedt u de mogelijkheid om bestanden eenvoudig van het web te downloaden zonder u zorgen te hoeven maken over lastige problemen, zoals verbindingsproblemen, netwerkfouten en datacompressie. Het komt niet noodzakelijkerwijs met Python, dus je zult het eerst moeten installeren.

De module is ontwikkeld omdat de 'urllib2'-module van Python veel complicaties heeft waardoor het moeilijk te gebruiken is. Het is eigenlijk vrij eenvoudig te installeren. Het enige dat u hoeft te doen, is pip install-aanvragen uitvoeren vanaf de opdrachtregel. U moet dan een eenvoudige test uitvoeren om ervoor te zorgen dat de module correct is geïnstalleerd. Hiertoe typt u '>>> importaanvragen' in de interactieve shell. Als er geen foutmeldingen verschijnen, is de installatie gelukt.

Als u een pagina wilt downloaden, moet u de functie 'requests.get ()' starten. De functie neemt een tekenreeks van een URL om te downloaden en retourneert vervolgens een 'antwoord'-object. Dit bevat het antwoord dat de webserver heeft geretourneerd voor uw verzoek. Als uw aanvraag slaagt, wordt de gedownloade webpagina opgeslagen als een tekenreeks in de tekstvariabele antwoordobjecten.

Het responsobject heeft meestal een kenmerk voor de statuscode dat u kunt gebruiken om erachter te komen of uw download succesvol was. Op dezelfde manier kunt u de methode 'raise_for_status ()' voor een antwoordobject gebruiken. Dit levert een uitzondering op als er fouten zijn opgetreden tijdens het downloaden van het bestand. Het is een geweldige manier om ervoor te zorgen dat een programma stopt met het optreden van een slechte download.

Vanaf hier kunt u uw gedownloade webbestand op uw harde schijf opslaan met de standaardfuncties 'open ()' en 'write ()'. Om echter de Unicode-codering van de tekst te behouden, moet u tekstgegevens vervangen door binaire gegevens.

Om de gegevens naar een bestand te schrijven, kunt u een 'for'-lus gebruiken met de methode' iter_content () '. Deze methode retourneert hoeveelheden gegevens over elke iteratie door de lus. Elke bulk is in bytes en u moet opgeven hoeveel bytes elke bulk bevat. Als u klaar bent met schrijven, roept u 'close ()' in om het bestand te sluiten en uw taak is nu beëindigd.

View more on these topics

Post a comment

Post Your Comment
© 2013 - 2024, Semalt.com. All rights reserved

Skype

semaltcompany

WhatsApp

16468937756

Telegram

Semaltsupport