2016-04-23 10 views
-1

Also habe ich eine große Textdatei mit vielen HTML-Zeilen, die schön von einem Webcrawler erstellt wurde. Es ist voller Zeilen, die wie der Code unten aussehen. Ich frage mich, wie kann ich nur eine neue Textdatei mit nur dem "gewünschten Text" anstelle der gesamten HTML-Codezeile bekommen?Wie kann ich mit python auf bestimmte Teile eines Strings in einer TXT-Datei zugreifen?

b'<b><a href="example.html" target="_blank">Desired Text 1</a></b>' 
b'<b><a href="example.html" target="_blank">Desired Text 2</a></b>' 
b'<b><a href="example.html" target="_blank">Desired Text 3</a></b>' 
b'<b><a href="example.html" target="_blank">Desired Text 4</a></b>' 
b'<b><a href="example.html" target="_blank">Desired Text 5</a></b>' 
b'<b><a href="example.html" target="_blank">Desired Text 6</a></b>' 

Antwort

1

Werfen Sie einen Blick auf BeautifulSoup, haben die Beispiele eine Demo auf genau dieses Problem:

Beautiful Soup Quick Intro

[EDIT] Detaillierte Lösung für Ihren Fall angebracht:

from bs4 import BeautifulSoup 

text = """ 
b'<b><a href="example.html" target="_blank">Desired Text 1</a></b>' 
b'<b><a href="example.html" target="_blank">Desired Text 2</a></b>' 
b'<b><a href="example.html" target="_blank">Desired Text 3</a></b>' 
b'<b><a href="example.html" target="_blank">Desired Text 4</a></b>' 
b'<b><a href="example.html" target="_blank">Desired Text 5</a></b>' 
b'<b><a href="example.html" target="_blank">Desired Text 6</a></b>' 
""" 

soup = BeautifulSoup(text, 'html.parser') 
print soup.getText() 
+0

@ Chris: Dies ist keine Link-Only-Antwort, da es die Lösung "BeautifulSoup" verwendet, obwohl das für eine Antwort immer noch sehr dünn ist. –

+0

Chris, ich bin mir nicht sicher, wie ich damit umgehen soll: Wenn ich einen Kommentar schreibe, bleibt die Frage offen, und es hat keinen Sinn, den Code zu kopieren. Soll ich die Frage als Duplikat kennzeichnen? – tfv

+1

@ tfv: Ein Duplikat von was? Ja, konstruiere ein Beispiel und erkläre, warum die Verwendung dieser Bibliothek die beste Lösung ist. Sie haben Recht, dass die Bereitstellung dieser Informationen in einem Kommentar unangemessen wäre. –

Verwandte Themen