¿Por qué ocurre un error de visualización en chino cuando Python usa una solicitud para obtener el código fuente de una página web?
Las solicitudes decodifican automáticamente el contenido del servidor. La mayoría de los conjuntos de caracteres Unicode se pueden decodificar sin problemas.
Después de enviar una solicitud, Requests infiere la codificación de la respuesta en función de los encabezados HTTP. Cuando accede a r.text, Requests utiliza su codificación de texto inferida. Puede conocer y cambiar la codificación utilizada por las solicitudes utilizando la propiedad r.encoding:
r.encoding
'utf-8'
r.encoding = 'ISO -8859-1'
Si cambia la codificación, Solicitudes utilizará la misma codificación cada vez que acceda a r.text. Si utiliza una lógica especial para calcular la codificación del texto, es posible que desee cambiar la codificación. Por ejemplo, HTTP y XML pueden especificar sus propias codificaciones. En este caso, se debe utilizar r.content para encontrar la codificación y se debe configurar r.encoding con la codificación adecuada. Esto permitirá que r.text se analice con la codificación correcta.