有道翻译_有道翻译api - CSDN
精华内容
参与话题
  • 破解有道翻译

    千次阅读 2019-09-23 22:14:35
    破解有道翻译 1、先获取到翻译的接口(http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule) 2、想要翻译单词,肯定要提交表单,查看Network中From-Data所提交的内容 3、分析提交内容发现...

    破解有道翻译

    1、先获取到翻译的接口(http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule)
    2、想要翻译单词,肯定要提交表单,查看Network中From-Data所提交的内容
    3、分析提交内容发现,i是你所提交的内容,salt是时间戳,ts是时间戳少一位,sign是通过加密算法加密,通过页面返回的JS判断出是MD5加密
    4、分析请求头,发现Content-Length是变化的,多提交几次翻译内容可发现规律。
    5、构建爬虫程序,代码如下:

    import requests
    import hashlib
    import time
    
    # 加密算法
    # "fanyideskweb" + e + i + "n%A-rKaT5fb[Gy?;N5@Tj"
    
    def md5_jm(md5_str):
        md5 = hashlib.md5()
        md5.update(md5_str.encode())
        return md5.hexdigest()
    
    
    def youdao(url, word):
        # 15692080356573
        # 15692088624641
        # 1569208035657
        time_new = time.time()
    
        salt = int(time_new * 10000)
        ts = int(time_new * 1000)
        # client = 'fanyideskweb'
        md5_str = 'fanyideskweb' + word + str(salt) + "n%A-rKaT5fb[Gy?;N5@Tj"
        md5 = md5_jm(md5_str)
        print(md5)
    
        proxies = {
            'https': 'https://114.99.27.97:8010'
        }
    
        headers = {
            'Accept': 'application/json, text/javascript, */*; q=0.01',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-CN,zh;q=0.9',
            'Connection': 'keep-alive',
            'Content-Length': str(233 + len(word)),
            'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
            'Cookie': 'OUTFOX_SEARCH_USER_ID=1944855340@221.219.225.40; OUTFOX_SEARCH_USER_ID_NCOO=1997242050.3906953; _ga=GA1.2.1551638093.1565616359; P_INFO=m18232003371_1@163.com|1566282170|0|other|00&99|null&null&null#bej&null#10#0#0|182371&1||18232003371@163.com; _ntes_nnid=377e77d2405afe0816cdd59ade547e7a,1567385119737; JSESSIONID=aaax0pdnMSVmHbJbYRB1w; ___rl__test__cookies=1569207897066',
            'Host': 'fanyi.youdao.com',
            'Origin': 'http://fanyi.youdao.com',
            'Referer': 'http://fanyi.youdao.com/',
            'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36',
            'X-Requested-With': 'XMLHttpRequest'
        }
    
        data = {
            'i': word,
            'from': 'AUTO',
            'to': 'AUTO',
            'smartresult': 'dict',
            'client': 'fanyideskweb',
            'salt': salt,
            'sign': md5,
            'ts': ts,
            'bv': '6ba427a653365049d202e4d218cbb811',
            'doctype': 'json',
            'version': '2.1',
            'keyfrom': 'fanyi.web',
            'action': 'FY_BY_REALTlME'
        }
        response = requests.post(url, headers=headers, data=data, proxies=proxies)
        data = response.text
        # 返回的是json数据,自行获取翻译
        print(data)
    
    
    if __name__ == '__main__':
        while True:
            woed = input('请输入要翻译的单词:')
            url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
            youdao(url, woed)
    
    
    展开全文
  • Hello,爬虫     直接贴代码 import urllib.request ...# 上边三个模块时用于生成有道翻译的有效时间戳的 import json content = input("请输入需要翻译的内容 : ") url = "http://fanyi.youdao.com/t...

    Hello,爬虫

     

     

    直接贴代码

    import urllib.request
    
    import time
    import random
    import hashlib
    # 上边三个模块是用于生成有道翻译的有效时间戳的
    
    import json
    
    content = input("请输入需要翻译的内容  :  ")
    
    url = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule"		
    # url要注意下,F12找到POST方式,这个向服务器端发送请求的url是我们真正需要的,而不是浏览器上的网址
    
    data = {}															# data的内容是在伪装浏览器
    i = str(content)													# F12观察到i对应的正是我们的输入,这里当然要使用我们写的脚本中的输入
    data['i']= i
    data['from']= 'AUTO'
    data['to']='AUTO'
    data['smartresult']= 'dict'
    data['client'] ='fanyideskweb'
    '''
    data['salt'] ='15804797668384'										# 发现这里F12复制来的是过期无效的时间戳
    data['sign'] ='b10ac488945a3092d4050b81d07297b9'					# 因此注释掉,重新写代码,每次请求时自动生成一个即时有效的时间戳
    '''
    data['ts'] ='1580479766838'
    data['bv'] ='db1af4c4f5ec7235b96c7182eecd9573'
    data['doctype']= 'json'
    data['version']= '2.1'
    data['keyfrom'] ='fanyi.web'
    data['action'] ='FY_BY_CLICKBUTTION'
    
    u = 'fanyideskweb'													# 生成有效时间戳
    f = str(int(time.time()*1000)+random.randint(1,10))
    c = "ebSeFb%=XZ%T[KZ)c(sy!"
    sign = hashlib.md5((u+i+f+c).encode('utf-8')).hexdigest()
    data['salt']=f
    data['sign']=sign
    
    
    data = urllib.parse.urlencode(data).encode('utf-8')
    
    response = urllib.request.urlopen(url,data)
    html = response.read().decode('utf-8')
    
    target = json.loads(html)
    print("翻译结果  : %s"  %  (target['translateResult'][0][0]['tgt']))
    

     

    运行效果(汉字如果横置则是shell中字体选择的缘故):

    >>>
    请输入需要翻译的内容:English
    翻译结果:英语
    >>>
    请输入需要翻译的内容:萝莉
    翻译结果:loli
    >>>
    请输入需要翻译的内容:こんにちは
    翻译结果:你好
    

    访问请求过于频繁会导致被拉黑,优化一下

     

    # 添加代理
    
    req = urllib.request.Request( url , data )
    req.add_header('User-Agent',"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36")
    
    response = urllib.request.urlopen( req )
    html = response.read().decode("utf-8")
    
    target = json.loads( html )
    return (target['translateResult'][0][0]['tgt']) 
    

     

     

    用tkinter做个简单的图形界面吧!(tkinter快被时代抛弃了。。。Swing组件也命不久矣)
     

    在这里插入图片描述

    加点画蛇添足的功能,用户密码验证功能(文件的读取) 、打赏功能(顶层窗口)
     
    反正就是tkinter也可以做很多事情,体验一下图形窗口化也挺有意思
    在这里插入图片描述

     

     

     

     

     

     

     

     

     

     ※ 后记

    ♥ 这个爬虫很基础

    ♠ 最基础的爬虫坑也多,希望上面的代码可以帮到你一点点

    ♣ tkinter比Java的Swing组件简单,且代码量小,可以玩玩,不要深究

    ♦ 完整的代码可以私信我

    展开全文
  • 有道翻译接口 破解

    万次阅读 热门讨论 2018-05-09 15:06:31
    有道翻译 API 最近有些任务需要将中文翻译成英文,由于个人英文水平问题,每次都要打开好几个在线翻译网页,一句一句的丢进去,取最佳者为所用,甚是麻烦。 任务完成之后,就稍微研究了一下各个翻译接口,下面以 ...

    有道翻译 API

    最近有些任务需要将中文翻译成英文,由于个人英文水平问题,每次都要打开好几个在线翻译网页,一句一句的丢进去,取最佳者为所用,甚是麻烦。
    任务完成之后,就稍微研究了一下各个翻译接口(Github地址,求star),下面以 “有道翻译 API” 为例。

    有道翻译官网提供了 API 接口,需要注册并付费才能使用,按照格式进行请求(JAVA DEMO),其中有一些参数:
    API 参数介绍
    注意 slat 和 sign 参数。从 JAVA DEMO 中可知,slat 随机数是通过获取系统时间得到的,而 sign 签名则是通过某个字符串的 md5 算法得到的,官网提供的 md5 算法代码如下:

    /**
         * 生成32位MD5摘要
         * @param string
         * @return
         */
        public static String md5(String string) {
            if(string == null){
                return null;
            }
            char hexDigits[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
                    'A', 'B', 'C', 'D', 'E', 'F'};
            byte[] btInput = string.getBytes();
            try{
                /** 获得MD5摘要算法的 MessageDigest 对象 */
                MessageDigest mdInst = MessageDigest.getInstance("MD5");
                /** 使用指定的字节更新摘要 */
                mdInst.update(btInput);
                /** 获得密文 */
                byte[] md = mdInst.digest();
                /** 把密文转换成十六进制的字符串形式 */
                int j = md.length;
                char str[] = new char[j * 2];
                int k = 0;
                for (byte byte0 : md) {
                    str[k++] = hexDigits[byte0 >>> 4 & 0xf];
                    str[k++] = hexDigits[byte0 & 0xf];
                }
                return new String(str);
            }catch(NoSuchAlgorithmException e){
                return null;
            }
        }

    本来按照上述操作就可以很顺利的利用 API 进行开发,关键是要收费啊,还是按字符数收费。接下来就开始了破解之路,实现 无需注册就可以使用 有道翻译 接口……

    有道翻译 破解

    用Chrome打开有道翻译首页,按F12键,在翻译框内输入一句话,点击翻译。
    审查元素
    可以看到有道翻译的 Request URL 和 Request Method,在往下看:
    审查元素
    从 From Data 中可以查看到许多参数。经过多次实验,发现发生改变的只有 i,salt 和 sign 三个参数值。其中 i 是要翻译的内容,salt 和 sign 的来历和作用前面已经介绍了。但在 API 中 sign 参数是带了 appKey(注册,后台生成) 的,我们没有这个。那么就需要研究一下如何生成 sign 的了。
    在众多请求中,发现一段 js 代码,如下:
    这里写图片描述
    将这段代码格式化一下,搜索关键词 sign,如下:
    这里写图片描述
    通过上述的 js 代码可知,salt 参数是通过系统时间,加上一个 [1, 10] 的随机数得到的, sign = md5(固定字符串 + 待翻译内容 + salt + 固定字符串) 得到的。这样我们就可以通过代码进行请求了,代码如下:

    public class YouDao {
        public static void main(String[] args) throws Exception {
            String from = "en";
            String to = "zh-CHS";
            String q = "Who am I? Where am I?";
            String url = "http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule";
    
            String u = "fanyideskweb";
            String d = q;
            long ctime = System.currentTimeMillis();
            String f = String.valueOf(ctime + (long)(Math.random() * 10 + 1));
            String c = "ebSeFb%=XZ%T[KZ)c(sy!";
    
            String sign = util.md5(u + d + f + c);
    
            Map<String, String> params = new HashMap<String, String>();
            params.put("i", q);
            params.put("from", from);
            params.put("to", to);
            params.put("smartresult", "dict");
            params.put("client", "fanyideskweb");
            params.put("salt", f);
            params.put("sign", sign);
            params.put("doctype", "json");
            params.put("version", "2.1");
            params.put("keyfrom", "fanyi.web");
            params.put("action", "FY_BY_CLICKBUTTION");
            params.put("typoResult", "false");
    
            CloseableHttpClient httpClient = HttpClients.createDefault();
            HttpPost request = new HttpPost(util.getUrlWithQueryString(url, params));
    
    //        request.setHeader("Accept","application/json, text/javascript, */*; q=0.01");
    //        request.setHeader("Accept-Encoding","gzip, deflate");
    //        request.setHeader("Accept-Language","zh-CN,zh;q=0.9");
    //        request.setHeader("Connection","keep-alive");
    //        request.setHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
            request.setHeader("Cookie","OUTFOX_SEARCH_USER_ID_NCOO=1537643834.9570553; OUTFOX_SEARCH_USER_ID=1799185238@10.169.0.83; fanyi-ad-id=43155; fanyi-ad-closed=1; JSESSIONID=aaaBwRanNsqoobhgvaHmw; _ntes_nnid=07e771bc10603d984c2dc8045a293d30,1525267244050; ___rl__test__cookies=" + String.valueOf(ctime));
    //        request.setHeader("Host","fanyi.youdao.com");
    //        request.setHeader("Origin","http://fanyi.youdao.com");
            request.setHeader("Referer","http://fanyi.youdao.com/");
            request.setHeader("User-Agent","Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36");
    //        request.setHeader("X-Requested-With","XMLHttpRequest");
    
            CloseableHttpResponse httpResponse = httpClient.execute(request);
            HttpEntity httpEntity = httpResponse.getEntity();
            String result = EntityUtils.toString(httpEntity, "UTF-8");
            EntityUtils.consume(httpEntity);    // 关闭
            httpResponse.close();
    
            String res[] = result.split("\"");
            StringBuilder resd = new StringBuilder();
            for (int i = 0; i < res.length; i++) {
                if (res[i].equals("tgt")) {
                    resd.append(res[i + 2]);
                }
            }
            System.out.println(resd.toString());
        }

    其中,md5() 和 getUrlWithQueryString() 可以利用 JAVA DEMO 提供的方法。

    注意:对”http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule“发起请求时,需要设置cookie,否则会出现errorCode。在不设置 cookie 时,只能请求 “http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule“。

    展开全文
  • 爬虫之有道翻译

    千次阅读 多人点赞 2018-05-19 23:48:46
    有道翻译采用js加密的方式,阻碍我们使用代码进行翻译。所以本文手把手教你破解有道js加密方式1. 首先不考虑js加密情况1.1 第一步打开有道翻译首页,简单输入一个单词,在检查-&gt;Network中分析请求响应1.2 ...

    有道翻译采用js加密的方式,阻碍我们使用代码进行翻译。所以本文手把手教你破解有道js加密方式

    1. 首先不考虑js加密情况

    1.1 第一步打开有道翻译首页,简单输入一个单词,在检查->Network中分析请求响应

    1.2 查看请求的url地址和请求方式,请求体



    1.3 代码实现,加上请求头,请求体

    from urllib import request,parse
    
    def youdao():
    
        #请求地址
        url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
        # 请求体
        data = {
            "i": "girl",
            "from":"AUTO",
            "to": "AUTO",
            "smartresult": "dict",
            "client": "fanyideskweb",
            "salt": "1526736521130",  ### 盐:很长的随机串,防止用字典反推
            "sign": "a18e780b545d559a3a1f9647b91c6ed0",  ## 签名:js加密
            "doctype": "json",
            "version": "2.1",
            "keyfrom": "fanyi.web",
            "action": "FY_BY_REALTIME",
            "typoResult": "false"
        }
    
        #数据编码
        data = parse.urlencode(data).encode()
    
        headers = {
                "Accept": "application/json,text/javascript,*/*;q = 0.01",
                # "Accept-Encoding": "gzip,deflate",      #### 啥意思。。查。。有它就会错误
                "Accept-Language": "zh-CN,zh;q = 0.8",
                "Connection": "keep-alive",
                "Content-Length": "200",
                "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8",
                "Cookie":"YOUDAO_EAD_UUID=c7c1d171-272e-443f-9d07-d9f8c779342e; _ntes_nnid=f691c54e993915b7e783b9985d6cc6aa,1490533835544; __guid=204659719.1198573978453254000.1502548625976.454; OUTFOX_SEARCH_USER_ID_NCOO=937151153.4321815; P_INFO=userlvkaokao@163.com|1523271382|0|other|00&99|bej&1523189875&hzhr#bej&null#10#0#0|157818&0|hzhr|userlvkaokao@163.com; OUTFOX_SEARCH_USER_ID=-2077552359@180.201.180.165; _ga=GA1.2.667209885.1524559124; JSESSIONID=aaaTQDWkaB_7QbzNHL4nw; monitor_count=1; fanyi-ad-id=44547; fanyi-ad-closed=1; ___rl__test__cookies=1526736521106",
                "Host":"fanyi.youdao.com",
                "Origin":"http://fanyi.youdao.com",
                "Referer":"http://fanyi.youdao.com/",
                "User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36",
        }
    
        req = request.Request(url=url,data=data,headers=headers)
    
        rsp = request.urlopen(req)
    
        html = rsp.read().decode()
        print(html)
    
    if __name__ == '__main__':
        youdao()

    可以看到正确的输出结果


    1.4 但是当你使用同样的代码翻译其它单词时,例如'boy'等就会出现各种各样的错误



    2. 破解有道的js加密

    2.1 分析发送请求时提交的Form Data,数据中的salt(盐)和sign(签名)是常见的js加密方式,salt是一个很长的随机串,是防止程序员使用字典反推({明文:密文}--{密文:明文})的形式破解加密方式(增加了原字符串的数量,使破解难以完成)。sign也是一种js加密方式,它的原理后边会详细阐述。


    2.2 js加密的方式是在浏览器(客户端)进行的,所以我们要分析有道翻译使用的js代码,找到其中对应的salt和sign。

    js源码也是右键->检查->Network查看,如图


    2.3 将代码复制出来,由于代码格式比较乱,所以使用http://tool.oschina.net/codeformat/js点击打开链接





    2.4 在代码中,使用salt和sign关键字查找它们出现在代码中的位置


    并且加密方式,为


    2.5 可以在浏览器控制台(console)执行js代码,看看这些加密公式实现了哪些功能,因为后续需要我们用python实现,比如(new Date).getTime()是计算的当前时间的时间戳(从1970年到现在的毫秒数)(省略了一些小数点位数),所以对应的python打码为time.time()它返回的是从1970年到现在的秒数,所以还需*10,并且取整。所以在python中具体计算salt的加密函数为


    def get_salt():
        '''
    
        :return:
        '''
        import time,random
    
        salt = int(time.time()*1000)+random.randint(0,10)
    
        return salt

    2.6 sign的加密方式使用了md5加密算法,即消息摘要算法第五版,提供消息的完整性保护,由js代码可知md5()的参数是一个由四个字符串组成的字符串,第一个和第二个都是常字符串,第三个是所谓的salt,第四个是输入要翻译的单词


    所以在python中实现sign的加密方式的方法如下

    def get_md5(v):
    
        import hashlib
        # Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护
        md5 = hashlib.md5()   #md5对象,md5不能反解,但是加密是固定的,就是关系是一一对应,所以有缺陷,可以被对撞出来
    
        ## update需要一个bytes格式参数
        md5.update(v.encode('utf-8'))  #要对哪个字符串进行加密,就放这里
        value = md5.hexdigest()  #拿到加密字符串
    
        return value
    
    def get_sign(key,salt):
    
        sign = 'fanyideskweb' + key + str(salt) + 'ebSeFb%=XZ%T[KZ)c(sy!'
    
        sign = get_md5(sign)
    
        return sign
    2.7 这样破解了salt和sign的加密方式,再加上1.1实现的翻译代码,我们就可以愉快的用代码实现有道翻译了,整合前边代码,
    def get_salt():
        '''
    
        :return:
        '''
        import time,random
    
        salt = int(time.time()*1000)+random.randint(0,10)
    
        return salt
    
    def get_md5(v):
    
        import hashlib
        # Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护
        md5 = hashlib.md5()   #md5对象,md5不能反解,但是加密是固定的,就是关系是一一对应,所以有缺陷,可以被对撞出来
    
        ## update需要一个bytes格式参数
        md5.update(v.encode('utf-8'))  #要对哪个字符串进行加密,就放这里
        value = md5.hexdigest()  #拿到加密字符串
    
        return value
    
    def get_sign(key,salt):
    
        sign = 'fanyideskweb' + key + str(salt) + 'ebSeFb%=XZ%T[KZ)c(sy!'
    
        sign = get_md5(sign)
    
        return sign
    
    from urllib import request,parse
    
    def youdao(key):
    
        #请求地址
        url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
    
        salt = get_salt()
    
        # 请求体
        data = {
            "i": key,
            "from":"AUTO",
            "to": "AUTO",
            "smartresult": "dict",
            "client": "fanyideskweb",
            "salt": str(salt),  ### 盐:很长的随机串,防止用字典反推
            "sign": get_sign(key,salt),  ## 签名:js加密
            "doctype": "json",
            "version": "2.1",
            "keyfrom": "fanyi.web",
            "action": "FY_BY_REALTIME",
            "typoResult": "false"
        }
    
        #数据编码
        data = parse.urlencode(data).encode()
    
        headers = {
                "Accept": "application/json,text/javascript,*/*;q = 0.01",
                # "Accept-Encoding": "gzip,deflate",      #### 啥意思。。查。。有它就会错误
                "Accept-Language": "zh-CN,zh;q = 0.8",
                "Connection": "keep-alive",
                "Content-Length": len(data),
                "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8",
                "Cookie":"YOUDAO_EAD_UUID=c7c1d171-272e-443f-9d07-d9f8c779342e; _ntes_nnid=f691c54e993915b7e783b9985d6cc6aa,1490533835544; __guid=204659719.1198573978453254000.1502548625976.454; OUTFOX_SEARCH_USER_ID_NCOO=937151153.4321815; P_INFO=userlvkaokao@163.com|1523271382|0|other|00&99|bej&1523189875&hzhr#bej&null#10#0#0|157818&0|hzhr|userlvkaokao@163.com; OUTFOX_SEARCH_USER_ID=-2077552359@180.201.180.165; _ga=GA1.2.667209885.1524559124; JSESSIONID=aaaTQDWkaB_7QbzNHL4nw; monitor_count=1; fanyi-ad-id=44547; fanyi-ad-closed=1; ___rl__test__cookies=1526736521106",
                "Host":"fanyi.youdao.com",
                "Origin":"http://fanyi.youdao.com",
                "Referer":"http://fanyi.youdao.com/",
                "User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36",
        }
    
        req = request.Request(url=url,data=data,headers=headers)
    
        rsp = request.urlopen(req)
    
        html = rsp.read().decode()
        print(html)
    
    if __name__ == '__main__':
        youdao("boy")


    展开全文
  • 有道翻译js加密破解

    2019-03-30 17:07:10
    案例说明:有道翻译请求参数(salt, sign, ts)通过js加密,进行爬虫请求时首先应对加密的参数进行解密,用到的技术要点有:js2py, hashlib加密,requests发送请求等。 import requests import json import js...
  • Java调用有道翻译

    2020-06-08 13:57:10
    JAVA调用有道词典进行翻译 生成访问地址 返回结果,key 和密钥都有,解压就能用
  • 有道翻译工具

    2020-07-21 10:00:05
    这是一个可以翻译任何英文的工具,包括单词翻译,英文语句翻译,快捷方便,有实用
  • Python-有道翻译

    2018-11-08 09:46:21
    特别是在处理日期的时候,俄文的根本看不懂是什么鬼,在想有么有可以拿来直接用的python翻译第三方库,百度了下,还真有。 #1)googletrans 安装googletrans : pip3 install googletrans 使用: # -*- ...
  • python 有道翻译

    2020-10-15 23:46:22
    words = input('输入你要翻译的内容:') url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' # http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule # ...
  • 主要在原代码中记录一个要解决的问题: 1. 2.
  • Vuforia Vumark初探

    千次阅读 2017-02-07 18:59:18
    Vuforia的Vumark功能很适合新项目的需求,就决定把研究的成果记录一下,希望能帮到同样想使用这个技术的人。 我的理解,Vumark就是把图像编码融入到了识别图中,这样就可以在识别AR图片时读取用户设置的图像编码,...
  • 前言:工作需要,翻译的文本经常带有 emoji 表情。 1. 谷歌翻译( translate& googletranspython库) 优点:方便,简单 缺点:需要翻墙,translate 库有次数限制,googletrans 库不能翻译带有 emoji 表情的...
  • Python爬取有道翻译

    千次阅读 2018-05-16 21:42:50
    转载自...首先我们打开有道翻译的链接:http://fanyi.youdao.com/。然后在页面中右键-&gt;检查-&gt;Network项。这时候就来到了网络监听窗口,以后你在这个页面中发送的所有网络请求,都...
  • 用Python破解有道翻译反爬虫机制

    万次阅读 多人点赞 2018-04-27 19:16:51
    想要系统的学习Python网络爬虫的可以看:零基础:21天搞定Python分布式爬虫破解有道翻译反爬虫机制web端的有道翻译,在之前是直接可以爬的。也就是说只要获取到了他的接口,你就可以肆无忌惮的使用他的接口进行翻译...
  • 有道的文档翻译真的不错呢,不但翻译的好,排出的版也好看。 但是我们想下载的话需要付钱呢。 我发现了一般的浏览器即使设置了禁用脚本,还是不可以进行复制。 下面给大家展示我的破解方法。
  • 爬取有道翻译API,自制翻译工具——Python爬虫。有道翻译提供即时免费的中文、英语、日语、韩语、法语、德语、俄语、西班牙语、葡萄牙语、越南语、印尼语、意大利语全文翻译、网页翻译、文档翻译服务。
  • 官网下载的最新版的有道翻译软件,有的时候在没有网的电脑上无法通过网络下载安装,我直接将按照好的文件包压缩一下,拷贝到另外一个电脑上使用
  • python有道翻译

    2020-01-29 19:52:48
    肆虐中国的2019肺炎病毒到处都是只能呆在家中,无聊浏览网页,发现python挺流行的,看了几页,写个处女python程序:“有道翻译”。 这个程序挺有意思的,不过还有很多问题,很多疑问,例如,我在有道翻译网页查到的...
  • python爬取有道翻译

    2019-07-17 19:09:50
    python爬虫爬取有道翻译教程 编写环境 为了读者能够正确读懂本教程,在正式开始前,宝宝们需要搭建的环境如下: 连接互联网的win10电脑,(win7也可以) Google浏览器(版本无要求) Python(版本3就可以了),如果没有安装的...
  • 有道翻译浏览器插件

    2020-07-17 17:51:25
    有道浏览器目前可用的google浏览器在线划词插件,不用去google商店下载了
1 2 3 4 5 ... 20
收藏数 10,534
精华内容 4,213
关键字:

有道翻译