从Python调用Google翻译

时间:2009-07-01 20:10:21

标签: python ajax

我想执行使用python中的Google Translate AJAX API的this script (view source),并能够传递参数并获得答案。我不关心HTML。

我知道我需要嵌入某种类型的Javascript解释器。这是否意味着我需要一个浏览器实例并对其进行操作?从python访问此API的最简洁方法是什么?

3 个答案:

答案 0 :(得分:3)

您可以改用RESTful API。它专为不是Javascript的环境而设计。

http://code.google.com/apis/ajaxlanguage/documentation/reference.html#_intro_fonje

这应该很容易从Python中使用。

答案 1 :(得分:3)

您可以使用google-api-translate-python与谷歌API进行对话。

编辑:目前尚不清楚来源是哪里,找到了here

答案 2 :(得分:1)

最近必须这样做,因为我必须翻译长字符串,所以我不能使用URL参数,而是使用数据有效负载。认为这是分享此解决方案的最佳场所 诀窍主要是使用Python出色的Requests模块帖子,但由于google需要GET请求,请使用'X-HTTP-Method-Override'标头覆盖GET的请求方法。
(明白地使用requests.get搞砸了数据有效载荷)

代码:

import requests


def translate_es_to_en(text):
    url = "https://www.googleapis.com/language/translate/v2"
    data = {
        'key': '<your-server-google-api-key>'
        'source': 'es',
        'target': 'en',
        'q': text
    }
    headers = {'X-HTTP-Method-Override': 'GET'}

    response = requests.post(url, data=data, headers=headers)
    return response.json()

希望这有助于任何人仍然处理这个