1. 程式人生 > >爬金山詞霸翻譯

爬金山詞霸翻譯

input 字符串 結果 () 提取 返回 inpu content {}

import json

import requests


class FanyiSpider:
    def __init__(self,fanyi):
        self.url = "http://fy.iciba.com/ajax.php?a=fy"
        self.fanyi = fanyi
        self.headers={"User-Agent":"Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36
"} #寫入from data 在 notwork裏面 def get_post_data(self) post_data = {"f":"auto", "t":"auto", "w":self.fanyi} #返回data數據 return post_data #請求 URL,帶上data跟寫好的 headers(註:是告訴瀏覽器用什麽訪問的) def parse_url(self,url,data): response
= requests.post(url,data=data,headers=self.headers) #返回response內容,decode默認解碼utf-8 return response.content.decode("utf-8") def get_ret(self,json_str): #獲取響應的json數據並轉換成字典 temp_dict = json.loads(json_str) print(temp_dict) #提取 需要的數據 (註:在Notwork 響應裏面有一串json字符串,依照關鍵字查詢)
ret=temp_dict["content"]["out"] print("{}:{}".format(self.fanyi,ret)) #主程序 def run(self): #調用URL函數 post_data = self.get_post_data() #定義json_str 調用parse_url獲取的結果 賦值給json_str json_str = self.parse_url(self.url,post_data) #調用get_ret函數來打印結果 self.get_ret(json_str) if __name__ == "__main__": a=input("請輸入要翻譯的內容:") b=FanyiSpider(a) b.run()

爬金山詞霸翻譯