A few months ago, I used Python's goslate
package to translate a bunch of French text to English. When I tried to do so this morning, though, the service returned an error:
import goslate
gs = goslate.Goslate()
print gs.translate('hello world', 'de')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "c:\Python27\lib\site-packages\goslate.py", line 389, in translate
return _unwrapper_single_element(self._translate_single_text(text, target_language, source_language))
File "c:\Python27\lib\site-packages\goslate.py", line 317, in _translate_single_text
results = list(self._execute(make_task(i) for i in split_text(text)))
File "c:\Python27\lib\site-packages\goslate.py", line 200, in _execute
yield each()
File "c:\Python27\lib\site-packages\goslate.py", line 315, in <lambda>
return lambda: self._basic_translate(text, target_language, source_lauguage)[0]
File "c:\Python27\lib\site-packages\goslate.py", line 241, in _basic_translate
response_content = self._open_url(url)
File "c:\Python27\lib\site-packages\goslate.py", line 178, in _open_url
response = self._opener.open(request, timeout=self._TIMEOUT)
File "c:\Python27\lib\urllib2.py", line 437, in open
response = meth(req, response)
File "c:\Python27\lib\urllib2.py", line 550, in http_response
'http', request, response, code, msg, hdrs)
File "c:\Python27\lib\urllib2.py", line 469, in error
result = self._call_chain(*args)
File "c:\Python27\lib\urllib2.py", line 409, in _call_chain
result = func(*args)
File "c:\Python27\lib\urllib2.py", line 656, in http_error_302
return self.parent.open(new, timeout=req.timeout)
File "c:\Python27\lib\urllib2.py", line 437, in open
response = meth(req, response)
File "c:\Python27\lib\urllib2.py", line 550, in http_response
'http', request, response, code, msg, hdrs)
File "c:\Python27\lib\urllib2.py", line 475, in error
return self._call_chain(*args)
File "c:\Python27\lib\urllib2.py", line 409, in _call_chain
result = func(*args)
File "c:\Python27\lib\urllib2.py", line 558, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 503: Service Unavailable
Does anyone know what happened to goslate
? If it's gone for good, are there decent alternatives to the goslate
package for translating French to English via an API call?
Please make sure you're using the newest version of Goslate and if not, try updating it from its repository. There were some changes in the API this month, and they are implemented in Goslate already. I've just checked it in my app, it does work flawlessly.
In order to update Goslate, you may need to install Mercurial version controlling system.
After installing Mercurial, clone the repo with this command:
and then update it from time to time like this (you need to be in the repository folder for this to work):