root@ubuntu:/data/server/spider# cat fanyi2.py
#coding:utf-8
import json
import requests
import sys
class fanyi:
def __init__(self,query_str):
# 準備語言檢測的url和資料
self.langdetect_url = ""
self.query_str = query_str
self.langdetect_data =
def parse_url(self,url,post_data):
#傳送請求獲取響應
json_res = requests.post(url,data=post_data,headers = self.headers)
return json_res.content.decode()
def get_postdata(self,lang):
# if後面的條件如果成立,那麼就把if前的值賦給to,
# 否則if否面的條件不成立,就把else後的值賦給to
fanyi_url = ""
to = "en" if lang == 'zh' else 'zh'
fanyi_data =
return fanyi_url,fanyi_data
def get_ret(self,json_res):
# 將json string 轉換為python字典型別
dict_res = json.loads(json_res)
# print('dict_res', dict_res)
# ret = dict_res['trans_result']['data'][1]['result'][0][1]
ret = dict_res['trans_result']['data'][0]['dst']
print('%s翻譯的結果是:%s'%(self.query_str,ret))
def run(self):
# 1.檢測語言的url,檢測語言的post——data
# 2.傳送請求獲取響應
lan_json_res = self.parse_url(self.langdetect_url,self.langdetect_data)
# print('lan_json_res', lan_json_res)
# 3。提取語言的型別
lang = json.loads(lan_json_res)['lan']
# ret = self.get_ret(json_res)
# 4.獲取翻譯的url,翻譯的post_data
fanyi_url,fanyi_postdata = self.get_postdata(lang)
# 5.傳送請求獲取響應
fanyi_res = self.parse_url(fanyi_url,fanyi_postdata)
# 6.獲取翻譯的結果
ret = self.get_ret(fanyi_res)
if __name__ =="__main__":
while true:
query_str = input('請輸入要翻譯的內容:')
# query_str = sys.ar**[1]
#例項化翻譯物件
#呼叫例項方法
直接在linux 命令下輸入fanyi即可翻譯了
Pyhton實現模擬登入
本文主要用python實現了對 的模擬登入。通過自己構造post資料來用python實現登入過程。當你要模擬登入乙個 時,首先要搞清楚 的登入處理細節 發了什麼樣的資料,給誰發等.我是通過httpfox來抓取http資料報來分析該 的登入流程。同時,我們還要分析抓到的post包的資料結構和heade...
網路翻譯實現
利用有道翻譯api,提交要查詢的單詞,返回json結果,然後對結果進行解析輸出 usr bin env python coding utf 8 import urllib import json def dealjson ret ret json.loads ret error ret errorc...
網路翻譯實現
利用有道翻譯api,提交要查詢的單詞,返回json結果,然後對結果進行解析輸出 usr bin env python coding utf 8 import urllib import json def dealjson ret ret json.loads ret error ret errorc...