#python #beautifulsoup
#python #beautifulsoup
Вопрос:
Я установил BeautifulSoup с помощью easy_install и пытаюсь запустить следующий скрипт
from BeautifulSoup import BeautifulSoup
import re
doc = ['<html><head><title>Page title</title></head>',
'<body><p id="firstpara" align="center">This is paragraph <b>one</b>.',
'<p id="secondpara" align="blah">This is paragraph <b>two</b>.',
'</html>']
soup = BeautifulSoup(''.join(doc))
print soup.prettify()
Но не уверен, почему это происходит
Traceback (most recent call last):
File "C:Python27reading and writing xml file from web1.py", line 49, in <module>
from BeautifulSoup import BeautifulSoup
ImportError: No module named BeautifulSoup
Не могли бы вы, пожалуйста, помочь.
Спасибо
Комментарии:
1. Вы настроили
easy_install
на использование Python2.7 или встроенной версии Python, которая поставляется с любой используемой вами ОС? Если вы не указали 2.7, попробуйте выполнить Python2,4 или Python2.62. Похоже, вы установили BeautifulSoup для другой версии Python, отличной от той, которую вы используете для запуска этого скрипта.
3. Спасибо за ваш ответ… да, на самом деле мне нужна easy_install для 64-разрядной Windows, но я установил 32-разрядную версию. easy_install для 64-разрядной версии здесь недоступен: pypi.python.org/pypi/setuptools#files . что мне тогда делать??
Ответ №1:
Попробуйте это from bs4 import BeautifulSoup
Это может быть проблемой с Beautiful Soup, версией 4 и бета-днями. Я только что прочитал это с домашней страницы.
Комментарии:
1. Прошло больше года, и ничего не изменилось 🙂
2. Для будущих пользователей: по состоянию на 2 мая 2014 года это решение все еще работает с Python 3.4.0 и BeautifulSoup 4.3.2 в Windows 8.1
3. Работает и для Windows10 🙂
4. Это решение также работает в Google Colab. Альтернативы были проблематичными. Пришлось немного осмотреться, прежде чем найти это.
Ответ №2:
В Ubuntu 14.04 я установил его из apt-get, и он отлично работал:
sudo apt-get install python-beautifulsoup
Тогда просто сделайте:
from BeautifulSoup import BeautifulSoup
Комментарии:
1. Операционная система использует Windows (обратите внимание на
C:Python27
путь в его трассировке). Этот ответ для него бесполезен.2. @rmunn А как насчет всех этих пользователей Linux (таких как я)? Я отредактировал ответ. Спасибо за -1…
Ответ №3:
Попробуйте это, мой работал таким образом. Чтобы получить какие-либо данные тега, просто замените «a» на нужный тег.
from bs4 import BeautifulSoup as bs
import urllib
url="http://currentaffairs.gktoday.in/month/current-affairs-january-2015"
soup = bs(urllib.urlopen(url))
for link in soup.findAll('a'):
print link.string
Ответ №4:
вы можете импортировать bs4 вместо BeautifulSoup. Поскольку bs4 является встроенным модулем, дополнительная установка не требуется.
from bs4 import BeautifulSoup
import re
doc = ['<html><head><title>Page title</title></head>',
'<body><p id="firstpara" align="center">This is paragraph <b>one</b>.',
'<p id="secondpara" align="blah">This is paragraph <b>two</b>.',
'</html>']
soup = BeautifulSoup(''.join(doc))
print soup.prettify()
Если вы хотите запросить, используйте модуль requests.
запрос использует urllib
, requests
модули.
но я лично рекомендую использовать requests
module вместо urllib
модуль устанавливается для использования:
$ pip install requests
Вот как использовать модуль запросов:
import requests as rq
res = rq.get('http://www.example.com')
print(res.content)
print(res.status_code)
Комментарии:
1.
bs4
не является встроенным модулем.
Ответ №5:
Сначала установите beautiful soup версии 4. напишите команду в окне терминала:
pip install beautifulsoup4
затем импортируйте библиотеку BeutifulSoup
Комментарии:
1. У меня не работает
Ответ №6:
если у вас есть две версии python, возможно, моя ситуация могла бы вам помочь
это моя ситуация
1-> mac osx
2-> у меня есть две версии python, (1) версия системы по умолчанию 2.7 (2) установленная вручную версия 3.6
3-> я установил beautifulsoup4 с sudo pip install beautifulsoup4
4-> я запускаю файл python с python3 /XXX/XX/XX.py
итак, эта ситуация 3 и 4 являются ключевой частью, я установил beautifulsoup4 с помощью «pip», но этот модуль был установлен для python версии 2.7, и я запускаю файл python с помощью «python3». итак, вам следует установить beautifulsoup4 для python 3.6;
с помощью sudo pip3 install beautifulsoup4
вы можете установить модуль для python 3.6
Ответ №7:
если вы установили его таким образом (если нет, установите этот способ):
pip install beautifulsoup4
и если вы использовали его этот код (если нет, используйте этот код):
from bs4 import BeautifulSoup
если вы используете систему Windows, проверьте, есть ли модуль, возможно, сохранен другой путь к его модулю
Ответ №8:
У меня была такая же проблема с eclipse в Windows 10.
Я установил его, как рекомендуется, через командное окно Windows (cmd) с:
C:UsersNAMEOFUSERAppDataLocalProgramsPythonbeautifulsoup4-4.8.2setup.py install
BeautifulSoup был установлен следующим образом в моем каталоге python:
C:UsersNAMEOFUSEAppDataLocalProgramsPythonPython38Libsite-packagesbeautifulsoup4-4.8.2-py3.8.egg
После ручного переноса папок bs4 и EGG-INFO в папку site-packages все начало работать, также приведен пример:
from bs4 import BeautifulSoup
html = """
<html>
<body>
<p> Ich bin ein Absatz!</p>
</body>
</html>
"""
print(html)
soup = BeautifulSoup(html, 'html.parser')
print(soup.find_all("p"))
Ответ №9:
попробуйте это: из bs4 импортируйте BeautifulSoup
Комментарии:
1. Это всего лишь частичная копия ответа, набравшего наибольшее количество голосов, без форматирования или контекста. Пожалуйста, не крадите ответы.