Beautiful Soup es un paquete de Python para analizar documentos HTML y XML y reside dentro de un paquete Debian llamado python-bs4
. Sin embargo, python-bs4
El paquete es un paquete predeterminado en el sistema Debian Linux para la versión Python 2. Por lo tanto, si su intención es utilizar Python3 como entorno predeterminado, deberá instalar también Python3 y su versión correspondiente de BS4 python3-bs4
. Empecemos por la instalación de python3:
# apt-get install -y vim python3
Después de una instalación exitosa del paquete python3, asegúrese de que python3 esté configurado como predeterminado:
# update-alternatives --install /usr/bin/python python /usr/bin/python3.4 2 update-alternatives: using /usr/bin/python3.4 to provide /usr/bin/python (python) in auto mode
Confirme que Python 3 es una versión predeterminada:
# python --version Python 3.4.2
Todo lo que queda es instalar Beautiful Soup analizando el paquete HTML y XML para que coincida con la versión 3 de Python:
# apt-get install python3-bs4
Todo listo. Pruebe Beautiful Soup analizando HTML y XML con el siguiente script de ejemplo:
#!/usr/bin/env python3 from urllib.request import urlopen from bs4 import BeautifulSoup html = urlopen("http://www.gnu.org") bsObj = BeautifulSoup(html.read()); print (bsObj.title)
Guarde el código anterior en un archivo, por ejemplo. scrapetest.py
y hacerlo ejecutable:
$ chmod +x scrapetest.py
Una vez que esté listo, ejecute scrapetest.py
guión:
$ ./scrapetest.py <title>The GNU Operating System and the Free Software Movement</title>
Resolución de problemas
Traceback (most recent call last): File "scrapetest.py", line 2, in <module> from bs4 import BeautifulSoup ImportError: No module named 'bs4'
Su versión de python y bs4 no coincide o bs4 no está instalado. Asegúrese de que bs4 esté instalado y que corresponda a su versión de python.