Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

307
Views
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 answers
Answer question

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 Report

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 Report

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!