百度翻譯拒絕訪問後的內心複雜 = .= 果然還是有道翻譯比較靠譜
阿新 • • 發佈:2018-11-23
import chardet
import urllib
import json
if __name__ == "__main__":
baseurl = "http://fanyi.baidu.com/sug"
data={
'kw':'girl'
}
data = urllib.parse.urlencode(data).encode('utf-8'); #kw=girl//str型別
headers = {
'Content-length':len(data)
}
rsp = urllib. request.urlopen(baseurl,data=data) #data需要的是byte格式,所以encode成b模式
#print(type(rsp.read()))
json_data = rsp.read().decode('utf-8')
print(json_data)
json_data = json.loads(json_data) #轉換json格式 = =
#通俗解釋 :JSON 可以將 JavaScript 物件中表示的一組資料轉換為字串,然後就可以在網路或者程式之間輕鬆地傳遞這個字串,並在需要的時候將它還原為各程式語言所支援的資料格式
print(json_data)
結果 = =
{'errno': 1, 'data': []}
error1 = 操作被拒絕
博主表示很氣憤= = 等我會,再去試下有道
兩分鐘之後,有道測試 = .=百度翻譯這個妖豔賤貨- -哼,果然還是有道比較靠譜
import chardet
import urllib
import json
if __name__ == "__main__":
baseurl = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule"
content = input("請問您要查詢的內容是:")
data={
'i': content,
'from': 'AUTO',
'to': 'AUTO',
'smartresult': 'dict',
'client':'fanyideskweb',
'salt': '1542269140713',
'sign': '1a1c11988d4997bbe777121bbd77e85c',
'doctype': 'json',
'version': '2.1',
'keyfrom':'fanyi.web',
'ction': 'FY_BY_REALTIME',
'typoResult': 'false'
}
data = urllib.parse.urlencode(data).encode('utf-8'); #kw=girl//str型別 //在有道里面是i
headers = {
'Content-length':len(data)
}
rsp = urllib.request.urlopen(baseurl,data=data) #data需要的是byte格式,所以encode成b模式
#print(type(rsp.read()))
json_data = rsp.read().decode('utf-8')
json_data = json.loads(json_data)
print("你要翻譯的內容是:{0}".format(json_data['translateResult'][0][0]['tgt']))