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

2.1K
Views
Python google-trans-new translate raises error: JSONDecodeError: Extra data:

While working on Google translate API, I found out some times google can't translate anything, while it keeps raising the same exception: Extra data.

I have searched on the internet, I found a theory saying I have been blocked by Google translate somehow, or can be blocked because translation data exceeds the 5k character limit. here is a solution but I don't think it is the proper way to solve it.

My code is not new, it has been around 1 month working properly, but a few days ago, it started raising the error, I that time I don't know how to solve it so I leave it overnight to solve it later, but when I woke up, it is working again, I thought it was an error caused by google or something so I just forget it, but at the same day, around 10 pm, It stops working. I want to say is it's very inconsistent, sometimes it works some times doesn't.

How to reproduce: run the example code from google_trans_new package website with specified python version.

here is my code:

from google_trans_new import google_translator

translator = google_translator()  
translate_text = translator.translate('สวัสดีจีน',lang_tgt='en') 
print(translate_text)

output:

Traceback (most recent call last):
  File "c:/Users/my_name/MyApp.py", line 105, in <module>
    translate_text = translator.translate('สวัสดีจีน',lang_tgt='en')
  File "C:\Users\my_name\AppData\Local\Programs\Python\Python37\lib\site-packages\google_trans_new\google_trans_new.py", line 188, in translate
    raise e
  File "C:\Users\my_name\AppData\Local\Programs\Python\Python37\lib\site-packages\google_trans_new\google_trans_new.py", line 152, in translate
    response = json.loads(response)
  File "C:\Users\my_name\AppData\Local\Programs\Python\Python37\lib\json\__init__.py", line 348, in loads
    return _default_decoder.decode(s)
  File "C:\Users\my_name\AppData\Local\Programs\Python\Python37\lib\json\decoder.py", line 341, in decode
    raise JSONDecodeError("Extra data", s, end)
json.decoder.JSONDecodeError: Extra data: line 1 column 371 (char 370)

I have tested on my computer, my Heroku web app(for discord bot and line bot), and my friend's laptop. They all raising the same error.

my environments:

Python version: 3.7.0 (google-trans-new specified >= 3.6)
Heroku Python version: 3.8.10
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

There is already an open git issue for this. The workaround for it is:

Change line 151 in google_trans_new/google_trans_new.py which is: response = (decoded_line + ']') to response = decoded_line

You just need to clone the google_trans_new repository and edit line 151 on google_trans_new.py as mentioned above.

Test done using the edited code and your input (สวัสดีจีน): enter image description here

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!