Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

319
Visualizações
TypeError: el objeto JSON debe ser str, no 'bytes'

Tengo el siguiente código muy básico que arroja; TypeError: the JSON object must be str, not 'bytes'

 import requests import json url = 'my url' user = 'my user' pwd = 'my password' response = requests.get(url, auth=(user, pwd)) if(myResponse.ok): Data = json.loads(myResponse.content)

Intento configurar la decodificación en la variable de datos, de la siguiente manera, pero arroja el mismo error; jData = json.loads(myResponse.content).decode('utf-8')

¿Alguna sugerencia?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

json.loads(myResponse.content.decode('utf-8'))

Lo pusiste en el orden equivocado, error inocente.


(Respuesta detallada). Como señaló cortésmente wim, en algunos casos excepcionales, podrían optar por UTF-16 o UTF-32. Estos casos serán menos comunes ya que los desarrolladores, en ese escenario, estarían decidiendo conscientemente desperdiciar ancho de banda valioso. Entonces, si tiene problemas de codificación, puede cambiar utf-8 a 16, 32, etc.

Hay un par de soluciones para esto. Puede usar la función .json() incorporada de la solicitud:

 myResponse.json()

O bien, puede optar por la detección de caracteres a través chardet . Chardet es una biblioteca desarrollada a partir de un estudio. La biblioteca tiene una función: detect . Detect puede detectar las codificaciones más comunes y luego usarlas para codificar su cadena.

 import chardet json.loads(myResponse.content.decode(chardet.detect(myResponse.content)["encoding"]))
over 4 years ago · Santiago Trujillo Relatório

0

Deje que las solicitudes lo decodifiquen por usted:

 data = response.json()

Esto verificará los encabezados (Tipo de contenido) y la codificación de la respuesta, detectando automáticamente cómo decodificar el contenido correctamente.

over 4 years ago · Santiago Trujillo Relatório

0

python3.6+ hace esto automáticamente, por lo que su código no debería devolver un error en python3.6+

qué hay de nuevo en python3.6

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda