proyectos ejemplos python beautifulsoup urllib3

python - ejemplos - ¿Qué debo usar en lugar de urlopen en urllib3



django (3)

La nueva biblioteca urllib3 tiene una buena documentación here
Para obtener el resultado deseado debes seguir eso:

Import urllib3 from bs4 import BeautifulSoup url = ''http://www.thefamouspeople.com/singers.php'' http = urllib3.PoolManager() response = http.request(''GET'', url) soup = BeautifulSoup(response.data.decode(''utf-8''))

La parte "decodificar utf-8" es opcional. Funcionó sin él cuando lo intenté, pero publiqué la opción de todos modos.
Fuente: Guía del usuario

Quería escribir un código como antes ... así:

from bs4 import BeautifulSoup import urllib2 url = ''http://www.thefamouspeople.com/singers.php'' html = urllib2.urlopen(url) soup = BeautifulSoup(html)

Pero encontré que tengo que instalar urllib3 ahora.

Pero puede encontrar cualquier tutorial o ejemplo para entender cómo reescribir el código anterior, por ejemplo, urllib3 no tiene urlopen.

¿Alguna explicación o ejemplo por favor?

Estoy usando python 3.4.


urllib3 es una biblioteca diferente de urllib y urllib2. Tiene muchas características adicionales para las urllibs en la biblioteca estándar, si las necesita, cosas como reutilizar las conexiones. La documentación está aquí: https://urllib3.readthedocs.org/

Si desea utilizar urllib3, deberá pip install urllib3 . Un ejemplo básico se ve así:

from bs4 import BeautifulSoup import urllib3 http = urllib3.PoolManager() url = ''http://www.thefamouspeople.com/singers.php'' response = http.request(''GET'', url) soup = BeautifulSoup(response.data)


No tienes que instalar urllib3 . Puede elegir cualquier biblioteca de creación de solicitudes HTTP que se ajuste a sus necesidades y alimentar la respuesta a BeautifulSoup . Sin embargo, la elección es generalmente debido al rico conjunto de características y la conveniente API. Puede instalar requests ingresando pip install requests en la línea de comandos. Aquí hay un ejemplo básico:

from bs4 import BeautifulSoup import requests url = "url" response = requests.get(url) soup = BeautifulSoup(response.content, "html.parser")