gpt4 book ai didi

python - 类型错误 : compile() expected string without null bytes

转载 作者:太空狗 更新时间:2023-10-30 00:00:35 32 4
gpt4 key购买 nike

我正在尝试使用谷歌翻译 API 翻译字符串。

#!/usr/bin/env python
# -*- coding: utf-8 -*-


import sys
import urllib
import urllib2

import ast


url = 'http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q='+urllib.quote(' '.join(sys.argv[3:])) +'&langpair='+sys.argv[1]+'%7C'+sys.argv[2]
print url

transtext =urllib2.urlopen(urllib2.Request(url)).read()
content=ast.literal_eval(transtext)

print content['responseData']['translatedText']

python testURL.py hi en 'नमस्ते'

这是给定的 url。

http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=%E0%A4%A8%E0%A4%AE%E0%A4%B8%E0%A5%8D%E0%A4%A4%E0%A5%87&langpair=hi%7Cen如果我们检查上面的 url,我们可以看到输出是 Hello

{"responseData": {"translatedText":"Hello"}, "responseDetails": null, "responseStatus": 200}

这是字符串格式,所以我尝试使用 ast.literal_eval 将其转换为字典格式,然后通过 content['responseData']['translatedText'] 访问字典中的数据,但出现以下错误

错误:

    content=ast.literal_eval(transtext)
File "/usr/lib/python2.6/ast.py", line 49, in literal_eval
node_or_string = parse(node_or_string, mode='eval')
File "/usr/lib/python2.6/ast.py", line 37, in parse
return compile(expr, filename, mode, PyCF_ONLY_AST)
TypeError: compile() expected string without null bytes

python 版本 2.6 和操作系统 Ubuntu 9.10

最佳答案

您得到的响应可能是 JSON 格式。尝试使用 Python 2.6 中包含的 json 模块。

关于python - 类型错误 : compile() expected string without null bytes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4397903/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com