Instale Beautiful Soup para usar con una versión superior de Python (que el Mac OS predeterminado)

Instale Beautiful Soup para usar con una versión superior de Python (que el Mac OS predeterminado)

Acabo de reinstalar Python 2.7 en mi MacBook Pro (con OS 10.13.6 High Sierra) porque lo había eliminado sin darme cuenta, sin darme cuenta de que era necesario. También tengo Python 3.6.8 cargado en la misma computadora y estoy trabajando en "Automatizar las cosas aburridas", que requiere Beautiful Soup para el raspado web. El problema es que mi Terminal indica Python v2.7.15 y está instalando BS4 en algún lugar de esa biblioteca, pero lo necesito para Python v3.6.8. Actualicé las herramientas de configuración a la especificación más reciente usando:

python -m pip install --upgrade pip setuptools wheel

Si escribo " python3" en la línea de comando en un intento de llegar a v3.6.8, obtengo:

Python 3.6.8 (v3.6.8:3c6b436a57, Dec 24 2018, 02:04:31) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

Todo lo que escribo después me da un error de sintaxis o si escribo:

python --version

vuelve:

 Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    NameError: name 'python' is not defined

Cuando intento cambiar el directorio a la carpeta Descargas, aparece esto:

>>> cd /Users/User/Downloads
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'cd' is not defined

¿Alguien puede indicarnos cuál es el problema con la línea de comando? Y además, ¿cómo ejecuto ahora el instalador de pip desde la línea de comandos para instalar/dirigir el paquete BS4 a la biblioteca python3.6.8?

Probablemente sea muy sencillo, sin embargo, soy un poco novato aquí...

Gracias por tu ayuda.

Respuesta1

Si escribo "python3" en la línea de comando en un intento de llegar a v3.6.8, obtengo:

Python 3.6.8 (v3.6.8:3c6b436a57, Dec 24 2018, 02:04:31) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

Todo lo que escribo después me da un error de sintaxis

Esto se debe a que los comandos que estás ingresando están siendo interpretados porPitón, no tu terminal. Para volver a su terminal normal, ingrese quit().

¿Cómo ejecuto ahora el instalador de pip desde la línea de comando para instalar/dirigir el paquete BS4 en/hacia la biblioteca python3.6.8?

Parece que cuando reinstaló Python 2.7, sus directorios se agregaron a suCAMINO Variable ambientalantes de los directorios de Python 3. Cuando ingrese pythona su terminal, buscará un ejecutable nombrado pythonprimero en eldirectorio de trabajo actualy luego a través de cada uno de los directorios en suCAMINO. Ejecuta el primer partido y deja de mirar.

Recomendaría editar tuCAMINOentonces los directorios de Python 3 están antes de los directorios de Python 2. Vereditando la variable PATH en mac.

Estoy ejecutando Windows y tengo estos dos directorios en mi RUTA para Python 3:

C:\Users\Admin\AppData\Local\Programs\Python\Python37\
C:\Users\Admin\AppData\Local\Programs\Python\Python37\Scripts

Necesito ambos, porque el pythonejecutable está en el primer directorio y el pipejecutable está en el segundo.

Alternativamente, cambie el directorio en su terminal a donde pipestá el ejecutable: cd [...]\Python\Python37\Scripts.

Ahora puedes instalar Beautiful Soup 4 para Python 3:pip install beautifulsoup4

Respuesta2

Gracias Gordon.

Esto se debe a que los comandos que ingresa son interpretados por Python, no por su terminal. Para volver a su terminal normal, ingrese quit()

Sí, ese fue un error obvio de mi parte. Gracias por corregirme.

La cuestión de restablecer PATH para priorizar Python 3 sobre 2 requerirá un poco de investigación; La publicación vinculada me pareció un poco confusa, pero solo significa que tengo que leer un poco.

Lo que funcionó para mí fue simplemente escribirpip3 install beautifulsoup4

Encontré esto mientras buscaba la ruta del archivo para Python 3.6 y encontré el archivo readme.txt que se encuentra en la carpeta de la aplicación de esa versión. Esto es:

Coexistencia de Python 3 y Python 2: Python.org Las versiones Python 3.6 y 2.7.x se pueden instalar en su sistema y no entrarán en conflicto. Los nombres de los comandos para Python 3 contienen un 3, python3 (o python3.6), idle3 (o idle3.6), pip3 (o pip3.6), etc. Los nombres de los comandos de Python 2.7 contienen un 2 o ningún dígito: python2 ( o python2.7 o python), idle2 (o idle2.7 o inactivo), etc.

Así que ahí está.

De cualquier modo gracias por su ayuda. Me enviaste en la dirección correcta para estar seguro.

información relacionada