Bin ganz neu in Python dabei und hab mir als 1. "Projekt" einen Webcrawer auserkoren
SuFu hab ich genutzt, aber würde halt auch gerne wissen, was an meinem code konkret falsch ist..
Code: Alles auswählen
#!/usr/bin/python3.5
import urllib
import urllib.request
import html.parser
from bs4 import BeautifulSoup
import sys
while True:
try:
thisUrl = "https://www.wikipedia.de"
test = BeautifulSoup(urllib.request.urlopen(thisUrl).read(), "html.parser").find_all("a")
for links in test:
site = links.get("href")
print(site)
allA = BeautifulSoup(urllib.request.urlopen(site).read(), "html.parser").find_all("a")
for link in allA:
str(link)
print(link.get("href"))
print("****************") #rein zur besseren Übersicht
except ValueError:
print("ValueError")
sys.exit(0)
Soll ich nochmal komplett von neu starten, oder bin ich damit schon auf dem richtigen Weg und was löst immer den ValueError aus?
Mein code (so denke ich zumindest) macht eine tiefensuche, kann man das lassen oder wäre breitensuche besser?
Sobald ich nen funktionierenden crawler hab, werd ich die links nat in einer datei speichern und nicht mehr in der console ausgeben lassen
Vielen Dank schonmal für die Hilfe!