Ich habe über einige interessante Daten innerhalb dieses Tags liegt etwas Screen Scraping versucht, und ich kam:Wie analysieren ld + json python mit
<script type="application/ld+json">
ich in der Lage gewesen sind, dass Tag mit schönen Suppe zu isolieren
html = urlopen(url)
soup = BeautifulSoup(html, "lxml")
p = soup.find('script', {'type':'application/ld+json'})
print p
aber ich war nicht in der Lage, mit den Daten zu arbeiten oder Daten von diesem Tag zu extrahieren.
Wenn ich versuche, Regex zu verwenden, um einige Sachen aus ihm heraus zu bekommen, erhalte ich:
TypeError: expected string or buffer
Wie kann ich die Daten von diesem Script-Tag bekommen und es verwenden, wie ich ein Wörterbuch oder eine Zeichenfolge verwenden würde, ? Ich benutze Python 2.7 übrigens.
Ich erhalte eine Fehlermeldung, dass aus dem "html/lesen()") Es sagt dies: Traceback (jüngste Aufforderung zuletzt): File "test.py", Zeile 20, in get_price() Datei "test.py", Zeile 16, in get_price supple = BeautifulSoup (html, "html.read()") Datei "C: \ PYTHON27 \ lib \ Site-Pakete \ bs4 \ __ init__.py", Zeile 165, in __init__ % ",". Join (features)) bs4.FeatureNotFound: Es wurde kein Tree Builder mit den von Ihnen angeforderten Features gefunden: html.read(). Müssen Sie eine Parser-Bibliothek installieren? –
wessells
sein html.parser nicht html.read() mein Fehler –
wenn Sie brauchen, können Sie stattdessen lxml –