2017-08-13 4 views
1

Mein Skript ist unten geschrieben und fand einen Fehler für soup.get_text() Befehl. Code:BeautifulSoup: NoneType-Fehler beim Parsen einer HTML-Datei

from BeautifulSoup import * 
soup=BeautifulSoup(open("F:\\HTML\\Registrationform.html")) 
print soup.get_text('+') 

Fehler: Datei "C:/Python27/beautifulsoup4-4.6.0.tar/scrapingbasic.py", Zeile 3, in

print soup.get_text('+') 
TypeError: 'NoneType' object is not callable 
+0

Update [beautifulsoup4] (https://www.crummy.com/software/BeautifulSoup/bs4/doc/) – SmartManoj

Antwort

1

BeautifulSoup Klasse erwartet html/xml Inhalte im Konstruktor. Das Hinzufügen von .read() zu Ihrer open Funktion sollte funktionieren. Hier ist der Code:

from BeautifulSoup import * 
soup=BeautifulSoup(open("F:\\HTML\\Registrationform.html").read()) 

print soup.get_text('+') 

Auch ich würde Ihnen empfehlen, zu BeautifulSoup4 zu aktualisieren.

Hoffe, das hilft.

0

Beautifulsoup erwartet HTML/XML-Dokument. Können Sie bitte überprüfen, ob Python 2.x Ihre HTML-Datei analysieren kann, nur um es erneut zu prüfen. Ein weiteres Problem kann unter Windows auftreten, müssen Sie sicherstellen, dass lxml-Bibliothek erfolgreich installiert wurde. https://www.crummy.com/software/BeautifulSoup/bs4/doc/

mit dem folgenden Abschnitt: Sie können auch die Dokumentation von nachprüfen

from bs4 import BeautifulSoup 
with open("index.html") as fp: 
    soup = BeautifulSoup(fp) 
+0

Führen Sie erfolgreich supp.get_text ('+') aus. Danke euch allen. –