Problema utf-8 Python
Publicado por German (3 intervenciones) el 08/10/2018 04:25:39
Hola,
Me pasa lago muy extraño con mi código cuando utilizo la librería BeautifulSoup para scrapear datos, mi código es el siguiente:
En el print del "for" final, si lo dejo así como está me muestra lo que quiero pero al final me tira este error:
Resultados de Búsqueda
P: ¿Cómo envio String xml por SoapUi, probar Webservice?
P: Problema para probar plugin facebook4
P: Problema al probar un servicio web SOAP
P: Probar funciones que cree en Haskell
P: Error al probar la aplicacion ionic en el celular
P: No puedo probar la aplicacion en Android Studio
P: probar libreria de redes neuronales
P: ¿Cómo puedo probar un servicio en SoapUI que reciba como parámetro un archivo (MultipartFile)?
P: ¿Cómo puedo probar una función disparadora en Google Apps Script
P: Probar con usuarios de prueba la app de mercadopago con woocommerce
Traceback (most recent call last):
File "requ.py", line 34, in <module>
print(titulos.strip())
File "C:\Python27\lib\encodings\cp850.py", line 12, in encode
return codecs.charmap_encode(input,errors,encoding_map)
UnicodeEncodeError: 'charmap' codec can't encode character u'\u2026' in position 95: character maps to <undefined>
Y si le agrego el .encode("utf-8")
No me muestra mas el error pero la informacion no puede ver los tildes ni signos:
P: ┬┐C├│mo envio String xml por SoapUi, probar Webservice?
P: Problema para probar plugin facebook4
P: Problema al probar un servicio web SOAP
P: Probar funciones que cree en Haskell
P: Error al probar la aplicacion ionic en el celular
P: No puedo probar la aplicacion en Android Studio
P: probar libreria de redes neuronales
P: ¿Cómo puedo probar un servicio en SoapUI que reciba como parámetro un archivo (MultipartFile)?
P: ┬┐C├│mo puedo probar una funci├│n disparadora en Google Apps Script
P: Probar con usuarios de prueba la app de mercadopago con woocommerce
P: Como probar la l├│gica de un controller en su IActionResult Create con una prueba unitaria coÔǪ
P: ┬┐C├│mo puedo probar el comportamiento de un Hilo en JUnit? [cerrada]
P: ┬┐Como puedo probar una tarea programada usando huey?
P: C├│mo puedo probar con Mocha y Chai una ruta de express
P: ┬┐C├│mo puedo probar si un valor booleano es falso en Perl?
Ya no se que hacer para que me los muestre bien y sin que me dé el error final, me podrían ayudar?
Gracias!
Me pasa lago muy extraño con mi código cuando utilizo la librería BeautifulSoup para scrapear datos, mi código es el siguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import requests
import sys
from bs4 import BeautifulSoup
def main():
payload = {'q': 'probar'}
response = requests.get("https://es.stackoverflow.com/search?", params=payload)
return response
if __name__ == "__main__":
response = main()
print response.status_code
print response.headers["content-type"]
print response.request.headers
print response.url
if response.status_code == 200:
contenido = response.content
soup = BeautifulSoup(contenido,"lxml")
datos = soup.find("h1", {"class": "grid--cell fl1 fs-headline1 mb0"})
print soup.title.string
print (datos.text)
print ("\n")
for sub_heading in soup.find_all('div', {"class": "summary"}):
titulos = sub_heading.h3.a.text
print(titulos.strip())
print("\n")
En el print del "for" final, si lo dejo así como está me muestra lo que quiero pero al final me tira este error:
Resultados de Búsqueda
P: ¿Cómo envio String xml por SoapUi, probar Webservice?
P: Problema para probar plugin facebook4
P: Problema al probar un servicio web SOAP
P: Probar funciones que cree en Haskell
P: Error al probar la aplicacion ionic en el celular
P: No puedo probar la aplicacion en Android Studio
P: probar libreria de redes neuronales
P: ¿Cómo puedo probar un servicio en SoapUI que reciba como parámetro un archivo (MultipartFile)?
P: ¿Cómo puedo probar una función disparadora en Google Apps Script
P: Probar con usuarios de prueba la app de mercadopago con woocommerce
Traceback (most recent call last):
File "requ.py", line 34, in <module>
print(titulos.strip())
File "C:\Python27\lib\encodings\cp850.py", line 12, in encode
return codecs.charmap_encode(input,errors,encoding_map)
UnicodeEncodeError: 'charmap' codec can't encode character u'\u2026' in position 95: character maps to <undefined>
Y si le agrego el .encode("utf-8")
1
2
3
4
for sub_heading in soup.find_all('div', {"class": "summary"}):
titulos = sub_heading.h3.a.text
print(titulos.strip()).encode('utf-8')
print("\n")
No me muestra mas el error pero la informacion no puede ver los tildes ni signos:
P: ┬┐C├│mo envio String xml por SoapUi, probar Webservice?
P: Problema para probar plugin facebook4
P: Problema al probar un servicio web SOAP
P: Probar funciones que cree en Haskell
P: Error al probar la aplicacion ionic en el celular
P: No puedo probar la aplicacion en Android Studio
P: probar libreria de redes neuronales
P: ¿Cómo puedo probar un servicio en SoapUI que reciba como parámetro un archivo (MultipartFile)?
P: ┬┐C├│mo puedo probar una funci├│n disparadora en Google Apps Script
P: Probar con usuarios de prueba la app de mercadopago con woocommerce
P: Como probar la l├│gica de un controller en su IActionResult Create con una prueba unitaria coÔǪ
P: ┬┐C├│mo puedo probar el comportamiento de un Hilo en JUnit? [cerrada]
P: ┬┐Como puedo probar una tarea programada usando huey?
P: C├│mo puedo probar con Mocha y Chai una ruta de express
P: ┬┐C├│mo puedo probar si un valor booleano es falso en Perl?
Ya no se que hacer para que me los muestre bien y sin que me dé el error final, me podrían ayudar?
Gracias!
Valora esta pregunta


0