2016-11-28 4 views
-1

Ich versuche, alle Zeichen, die nicht alphanumerisch sind, zu extrahieren und auch URLs aus einem Tweet mit Python zu extrahieren. Ich sollte nur mit durch Leerzeichen getrennten Wörtern belassen werden. Zum Beispiel: Wenn mein Tweet ist: "Hallo! Besuche meine Seite unter https://www.tutorialspoint.com/python/python_strings.htm @phyton #phyton" Ich sollte bekommen: "Hallo, schau dir meine Seite an" Danke für die Hilfe!Extrahieren von URLs, Erwähnungen und Hashtags von einem Tweet

+0

Es ist Inkonsistenz in Ihrem Beispiel wollen Sie ‚hallo‘ schließen sowohl ‚Phyton‘ auch wenn die Zeichenfolge entfernen ‚Hallo!‘ enthält nicht-alphanumerische Zeichen. Fügen Sie die Zeichenfolge 'Hi' ein, weil es kein Tag wie 'Phyton' ist? – davedwards

+0

Ja, ich nehme Hallo auf, weil es kein Tag ist, es ist ein Wort, aber ich werde die ganze Interpunktion los – tubitubi

Antwort

0

Angenommen, Sie haben bereits den Tweet-Text, dann sollte die Verwendung einiger von Pythons integrierten Operationen für Strings in der Lage sein, das zu tun, wonach Sie suchen. Hier ist ein Einzeiler mit Liste Verständnis und die string.translate module:

import string 

my_tweet = "Hi! Check out my page at https://www.tutorialspoint.com/python/python_strings.htm @phyton #phyton" 
tweet_text = ' '.join([i.lower() for i in my_tweet.split() if not i.startswith(('http', '@', '#'))]).translate(None, string.punctuation) 
print tweet_text # hi check out my page at 
Verwandte Themen