python學習筆記:"爬蟲+有道詞典"實現一個簡單的英譯漢程序


1.有道的翻譯

網頁: www.youdao.com

Fig1

Fig2

 

Fig3

Fig4

再次點擊"自動翻譯"->選中'Network'->選中'第一項',如下:

Fig5

然后顯示出如下內容,紅框畫出的部分是等會編寫代碼需要的地方:

Fig6

Fig7

再看看翻譯的結果:

Fig8

2.python實現英譯漢:

原理:把需要翻譯的內容輸入給有道詞典,然后通過程序把翻譯的結果爬下來。

 1 # -*- coding:utf-8 -*- 
 2 """
 3 Created on Sun May 03 09:36:12 2015  4 
 5 @author: 90Zeng  6 """
 7 
 8 import urllib  9 import json 10 
11 # 注意這里用unicode編碼,否則會顯示亂碼
12 content = input(u"請輸入要翻譯的內容:") 13 # 網址是Fig6中的 Response URL
14 url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=http://www.youdao.com/'
15 # 爬下來的數據 data格式是Fig7中的 Form Data
16 data = {} 17 data['type'] = 'AUTO'
18 data['i'] = content 19 data['doctype'] = 'json'
20 data['xmlVersion'] = '1.6'
21 data['keyfrom'] = 'fanyi.web'
22 data['ue'] = 'UTF-8'
23 data['typoResult'] = 'true'
24 
25 # 數據編碼
26 data = urllib.urlencode(data) 27 
28 # 按照data的格式從url爬內容
29 response = urllib.urlopen(url, data) 30 # 將爬到的內容讀出到變量字符串html,
31 html = response.read() 32 # 將字符串轉換成Fig8所示的字典形式
33 target = json.loads(html) 34 # 根據Fig8的格式,取出最終的翻譯結果
35 result = target["translateResult"][0][0]['tgt'] 36 
37 # 這里用unicode顯示中文,避免亂碼
38 print(u"翻譯結果:%s" % (target["translateResult"][0][0]['tgt']))

 

運行:


 

學習資料來源:小甲魚的視頻‘零基礎入門python’

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM