mirror of
https://github.com/Alvin-Zilverstand/ict-algemeen-opdrachten.git
synced 2026-03-06 13:23:58 +01:00
Add calculator and weather API scripts in JavaScript and Python
This commit is contained in:
49
Python/scrape/scrape.py
Normal file
49
Python/scrape/scrape.py
Normal file
@@ -0,0 +1,49 @@
|
||||
import os
|
||||
import requests
|
||||
import time
|
||||
from bs4 import BeautifulSoup
|
||||
|
||||
# Vraag de gebruiker om de URL van de nieuwswebsite
|
||||
url = input("Voer de URL van de nieuwswebsite in: ")
|
||||
|
||||
# Controleer of de URL begint met 'www.' of 'ww2.', zo niet, voeg 'www.' toe
|
||||
if not (url.startswith('www.') or url.startswith('ww2.')):
|
||||
url = 'www.' + url
|
||||
|
||||
# Controleer of de URL begint met 'https://', zo niet, voeg het toe
|
||||
if not url.startswith('https://'):
|
||||
url = 'https://' + url
|
||||
|
||||
# Haal de inhoud van de webpagina op
|
||||
try:
|
||||
response = requests.get(url)
|
||||
response.raise_for_status() # Raise an HTTPError for bad responses
|
||||
webpage = response.content
|
||||
except requests.exceptions.RequestException as e:
|
||||
print(f"Fout bij het ophalen van de webpagina: {e}")
|
||||
exit()
|
||||
|
||||
# Parse de webpagina met BeautifulSoup
|
||||
soup = BeautifulSoup(webpage, 'html.parser')
|
||||
|
||||
# Zoek alle titels van nieuwsartikelen (pas de selector aan op basis van de HTML-structuur van de website)
|
||||
titles = soup.find_all('h2') # Pas deze selector aan indien nodig
|
||||
|
||||
# Bepaal het pad van het huidige script
|
||||
script_dir = os.path.dirname(os.path.abspath(__file__))
|
||||
# Bepaal het pad van het bestand titels.txt in dezelfde directory
|
||||
file_path = os.path.join(script_dir, 'titels.txt')
|
||||
|
||||
# Controleer of er titels zijn gevonden
|
||||
if not titles:
|
||||
print("Geen titels gevonden. Controleer de HTML-structuur van de website en pas de selector aan.")
|
||||
else:
|
||||
# Open het bestand titels.txt in append-modus
|
||||
with open(file_path, 'a', encoding='utf-8') as file:
|
||||
# Schrijf de titels van de nieuwsartikelen naar het bestand
|
||||
for title in titles:
|
||||
file.write(title.get_text(separator=' ') + '\n')
|
||||
|
||||
print(f"De titels zijn toegevoegd aan {file_path}")
|
||||
|
||||
time.sleep(2) # Wacht 5 seconden voordat het script wordt afgesloten
|
||||
34
Python/scrape/titels.txt
Normal file
34
Python/scrape/titels.txt
Normal file
@@ -0,0 +1,34 @@
|
||||
Dodental van hotelbrand in Turks skioord loopt op tot 66
|
||||
Ook gratie voor Capitoolbestormers die jarenlange celstraffen kregen
|
||||
Driekwart gemeenten krijgt begroting niet rond, keuzes uitgesteld
|
||||
Amerikaanse president heeft eigen munt: 'Best wel eng dat dit kan'
|
||||
WHO-exit en rem op immigratie: de eerste decreten van Trump
|
||||
Start presidentschap Trump
|
||||
Streep door sancties tegen extremisten op Westoever • 915 trucks met hulpgoederen op dag 2 bestand
|
||||
Gevaar in Los Angeles houdt aan door sterke wind, nieuwe branden geblust
|
||||
Doden bij aardverschuivingen en overstromingen op Java en Bali
|
||||
Prins Harry's rechtszaak tegen krant van mediamagnaat Murdoch begint
|
||||
Formule 1-team Haas schrijft geschiedenis met eerste vrouwelijke race-engineer
|
||||
Kijken
|
||||
Oude Duitse oorlogsradar gaat na reparatie terug naar Terschelling
|
||||
Formatie Oostenrijk in nieuwe fase, rechts-radicale bondskanselier stap dichterbij
|
||||
Helft van jongvolwassenen noemt mentale gezondheid niet goed
|
||||
Nieuwe wet moet einde maken aan kat-en-muisspel rond designerdrugs
|
||||
NSC komt met voorstel voor referenda over nieuw pensioenstelsel
|
||||
Wie is Dana White, de vechtsportbaas en vertrouweling van Donald Trump?
|
||||
Alles in puin: de verwoesting in Gaza in beeld
|
||||
Titelhoudster Sabalenka ontsnapt: in drie sets naar halve finales Australian Open
|
||||
Pechvogel Van Baarle breekt sleutelbeen in eerste etappe van wielerseizoen
|
||||
Australische regering houdt spoedberaad na antisemitische aanvallen
|
||||
PSV laat zich geen crisis aanpraten: 'We hebben het heilige vuur nog steeds'
|
||||
Dubbelspecialist Verbeek verrassend naar halve finales Australian Open
|
||||
KNWU bezuinigt op beloften: geen Nederlandse jeugd naar WK in Rwanda
|
||||
TikTok in VS niet op zwart, maar ook na ingrijpen Trump in grijs gebied
|
||||
Uitgelegd
|
||||
Sport
|
||||
Gemist?
|
||||
Collecties
|
||||
Laatste nieuws
|
||||
NOS informatie
|
||||
Nieuws
|
||||
Sport
|
||||
Reference in New Issue
Block a user