首页 > 其他 > 详细

爬金山词霸翻译

时间:2019-04-20 17:11:39      阅读:114      评论:0      收藏:0      [点我收藏+]
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()

 

爬金山词霸翻译

原文:https://www.cnblogs.com/yl1710/p/10741450.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!