folgendes Problem habe ich, vielleicht weiss ja einer von euch, was da zu machen ist?
In meinem Programm gibt es eine Liste, die alle Unterlinks einer Hauptseite beeinhaltet. Bei der Ausgabe dieser Liste sieht es so aus:
"'https://kenfm.de/zur-sache-migration-und-markt/',", "'https://kenfm.de/zur-sache-venezuela-und-der-iran/',", "['https://kenfm.de/sendungen/',"]
Es will mir nach x-Stunden nicht gelingen, aus der Liste die Elemente
"
'
,
]
[
zu entfernen UND den reinen Hyperlink:
https://kenfm.de/zur-sache-venezuela-und-der-iran/
zu extrahieren, also ohne diese merkwürdigen Elemente " ' , ] [
Bei jedem konvertieren der Liste in einen str um z.B. re.sub(",", "", query_sorted) anzuwenden, hole ich mir diese merkwürdigen Zeichen wieder herein...
Was ich so auf Listen anwenden kann, z.B. query_sorted.remove(",") geht auch nicht, weil die Funktion wohl nur ganze Elemente löschen kann?!?
Das ist ziemlich nervig, weil das Problem jetzt doch relativ simpel ist...ich kriegs aber nicht hin
Muss ich vielleicht eine Binärdatei erstellen, wo die Zeichenketten hineingeschrieben werden und dann FIFO ausgelesen wird? Oder gibt es da einen leichteren Weg?
Hier noch der Sourcecode
Code: Alles auswählen
def get_html_all():
# Öffne HTML Seite BeautifulSoup
soup = BeautifulSoup(html_all, 'html.parser')
links_with_text = [a['href'] for a in soup.find_all('a', href=True) if a.text]
# Links sortieren
query_sorted = links_with_text
query_sorted = str(query_sorted)
query_sorted = list(query_sorted.split())
query_sorted.sort()
print(len(query_sorted))
# Doppelte Einträge entfernen
a = -2
b = -1
for elemente in query_sorted:
a += 1
b += 1
if query_sorted[b] == query_sorted[a]:
del query_sorted[b]
else:
continue
#print(elemente)
print(query_sorted)