Hallo,
ich hab ein Problem mit BeautifulSoup. Ich benutze es um eine Webseite nach bestimmten Tags zu durchsuchen. Das Problem ist, dass BeautifulSoup die Ergebnisse mit UTF-8-Kodierung zurück gibt. Wenn in dem Text jetzt aber beispielsweise Anführungszeichen ("") beinhaltet sind, werden die bei der Ausgabe so:
Wie kann ich das umgehen?
Hier der Code:
ich hab ein Problem mit BeautifulSoup. Ich benutze es um eine Webseite nach bestimmten Tags zu durchsuchen. Das Problem ist, dass BeautifulSoup die Ergebnisse mit UTF-8-Kodierung zurück gibt. Wenn in dem Text jetzt aber beispielsweise Anführungszeichen ("") beinhaltet sind, werden die bei der Ausgabe so:
dargestellt.
Wie kann ich das umgehen?
Hier der Code:
Code:
#encoding: utf-8
import feedparser
from BeautifulSoup import BeautifulSoup
import urllib2
news_rss_url = "http://www.n-tv.de/panorama/rss"
info = feedparser.parse(news_rss_url)
for entry in info.entries:
link = entry.link+"?service=print"
response = urllib2.urlopen(link)
html = response.read()
soup = BeautifulSoup(html)
erg = soup.renderContents()
#Überschrift (Sicherer entry.title aus RSS)
#erg_ueber = soup.findAll({'h1' : True})
#ueber = erg_ueber[0].renderContents()
print entry.title
#Zusammenfassung (Sicherer entry.description aus RSS)
#erg_zfassung = soup.findAll({'p' : True})
#zfassung = erg_zfassung[0].renderContents()
print entry.description
#Eigentliche News
for node in soup.findAll('p'):
print ''.join(node.findAll(text=True)) #DIESE AUSGABE ist nicht korrekt (oben kann ich es umgehen, da der feedparser es korrekt kodier zurückgibt)
break
print "\n"