web-dev-qa-db-fra.com

Importation de bs4 dans Python 3.5

J'ai installé les deux Python 3.5 et Beautifulsoup4. Lorsque j'essaie d'importer bs4, j'obtiens l'erreur ci-dessous. Y a-t-il un correctif? Ou devrais-je simplement installer Python 3.4 à la place? Veuillez être très explicite - je suis nouveau dans la programmation. Merci beaucoup!

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python 3.5\lib\sit-packages\bs4\__init__.py", line 30, in    <module>
   from .builder import builder_registry, ParserRejectionMarkup
  File "C:\Python 3.5\lib\sit-packages\bs4\__init__.py", line 308, in <module>
   from . import _htmlparser
  File "C:\Python 3.5\lib\sit-packages\bs4\_htmlparser.py", line 7, in <module>
   from html.parser import ( 
ImportError: cannot import name 'HTMLParseError'
15
anne_t

Mise à jour: À partir de 4.4.0, BeautifulSoup est compatible avec Python 3.5. Mise à niveau:

pip install --upgrade beautifulsoup4

Ancienne réponse:

En raison des modifications apportées à Déprécier le mode strict de HTMLParser problème:

Problème # 15114: le mode strict et l'argument de HTMLParser, HTMLParser.error et l'exception HTMLParserError ont été supprimés.

J'ai peur beautifulSoup4 n'est pas compatible avec Python 3.5 pour le moment. Utilisez Python 3.4.

26
alecxe

Mise à jour: BeautifulSoup 4.4.0 a été mis à jour pour être compatible avec python3.5, donc un pip install --upgrade beautifulsoup4 devrait faire l'affaire si vous rencontrez toujours ce problème.

19
AnilRedshift

J'ai envoyé à l'auteur un suivi de ce bogue. Si vous souhaitez installer BeautifulSoup sur Python 3.5a, j'ai téléchargé un correctif de travail du code source sur github.

https://github.com/jjangsangy/BeautifulSoup4

Vous pouvez l'installer en utilisant setup.py ou copiez et collez simplement ce code dans le terminal.

git clone https://github.com/jjangsangy/BeautifulSoup4 \
    && cd BeautifulSoup4 \
    && python3.5 setup.py install

Je suppose ici que puisque vous essayez la version 3.5a, votre interprète python est installé avec les autorisations utilisateur appropriées pour votre site-packages répertoire donc aucune invocation Sudo n'est nécessaire.

4
user2931216