吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1843|回复: 14
上一主题 下一主题
收起左侧

[Python 原创] 某道翻译源码 仅供学习 勿作他用

[复制链接]
跳转到指定楼层
楼主
cdsgg 发表于 2023-12-23 15:03 回帖奖励
本帖最后由 cdsgg 于 2023-12-23 15:14 编辑

[Python] 纯文本查看 复制代码
import hashlib
import time
import requests

# 这里是我自己写的解密数据接口 我本来想放在本地的 哎太麻烦了 不方便


def ase_cbc(encrypted_text):
    server_url = ‘这个是我自己写的解密接口 需要的话私聊吧 我就不放了 但是下面有给出node js服务器接口’
    response = requests.post(
        server_url, json={'encryptedText': encrypted_text})
    return response.json().get('decryptedText')


def generate_md5_hash_hex(data):
    md5_hash = hashlib.md5()
    md5_hash.update(str(data).encode('utf-8'))
    return md5_hash.hexdigest()

# 这个接口收到的数据非明文的 需要进行aes cbc 128 解密


def youdao_webtranslate(translatefrom, to, text):
    o = str(time.time() * 1000).split('.')[0]
    e = f'client=fanyideskweb&mysticTime={o}&product=webfanyi&key=fsdsogkndfokasodnaso'
    sign = generate_md5_hash_hex(e)

    url = 'https://dict.youdao.com/webtranslate'

    headers = {
        "Host": "dict.youdao.com",
        "Origin": "https://fanyi.youdao.com",
        "Referer": "https://fanyi.youdao.com/",
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0",
        "Cookie": ''
    }
    # 注意这里的cookie要跟请求有道第一次返回的cookie要一样 最好写成一个类 公用session

    data = {"i": text,
            "from": translatefrom,
            "to": to,
            "domain": "0",
            "dictResult": "true",
            "keyid": "webfanyi",
            "sign": sign,
            "client": "fanyideskweb",
            "product": "webfanyi",
            "appVersion": "1.0.0",
            "vendor": "web",
            "pointParam": "client,mysticTime,product",
            "mysticTime": o,
            "keyfrom": "fanyi.web",
            "mid": "1",
            "screen": "1",
            "model": "1",
            "network": "wifi",
            "abtest": "0",
            "yduuid": "abcdefg"}

    respone = requests.post(url, headers=headers, data=data)

    return respone.text

# 这个接口返回的是明文数据 我也不明白为什么他要搞两个接口 一个可以直接返回明文 一个返回的数据需要解密 不知道意义是什么
# 加密了就加密呗 反正我能解密  


def youdao_translate():
    url = 'https://dict.youdao.com/keyword/key'

    headers = {
        "Host": "dict.youdao.com",
        "Origin": "https://fanyi.youdao.com",
        "Referer": "https://fanyi.youdao.com/",
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0",
        # 这里自己写入cookie吧 或者访问有道翻译 可以获取到cookie
        "Cookie": ''
    }

    data = {"text": "你好啊",
            "lang": "zh",
            "to": "ja"}

    respone = requests.post(url, headers=headers, data=data)

    print(respone.text)


reponsetext = youdao_webtranslate('zh-CHS', 'en', '我是你爸爸')
print(ase_cbc(reponsetext))


js解密部分  喜欢的话可以放在服务器上面
[JavaScript] 纯文本查看 复制代码
const express = require('express');
const bodyParser = require('body-parser');
const crypto = require('crypto');

const app = express();
const port = 3000;

app.use(bodyParser.json());

app.post('/decrypt', (req, res) => {
    const encryptedText = req.body.encryptedText;

    const byteArray1 = [8, 20, 157, 167, 60, 89, 206, 98, 85, 91, 1, 233, 47, 52, 232, 56];
    const keyBuffer = Buffer.from(byteArray1);

    const byteArray2 = [210, 187, 27, 253, 232, 59, 56, 195, 68, 54, 99, 87, 183, 156, 174, 28];
    const ivBuffer = Buffer.from(byteArray2);

    const decipher = crypto.createDecipheriv('aes-128-cbc', keyBuffer, ivBuffer);

    let decryptedText;
    try {
        decryptedText = decipher.update(encryptedText, 'base64', 'utf-8');
        decryptedText += decipher.final('utf-8');
        res.status(200).json({ decryptedText });
    } catch (error) {
        console.error('Error during decryption:', error);
        res.status(500).json({ error: 'Error during decryption' });
    }
});

app.listen(port, () => {
    console.log(`Server is running on port ${port}`);
});

微信截图_20231223150046.png (26.79 KB, 下载次数: 9)

微信截图_20231223150046.png

免费评分

参与人数 1吾爱币 +7 热心值 +1 收起 理由
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

推荐
 楼主| cdsgg 发表于 2023-12-23 17:41 |楼主
baliao 发表于 2023-12-23 17:34
我使用这个接口去翻译,啥解密都不用,音标,短语,中文,造句全拔下来
http://dict.youdao.com/w/eng/

我今天无聊抓的接口 花了点时间写出来 其中一个接口也是不需要解密
推荐
baliao 发表于 2023-12-23 17:34
我使用这个接口去翻译,啥解密都不用,音标,短语,中文,造句全拔下来
http://dict.youdao.com/w/eng/
沙发
Y0uD1 发表于 2023-12-23 15:20
5#
baliao 发表于 2023-12-23 17:43
cdsgg 发表于 2023-12-23 17:41
我今天无聊抓的接口 花了点时间写出来 其中一个接口也是不需要解密

不错,谢谢分享!
6#
imu798 发表于 2023-12-23 18:18
谢谢分享。
7#
sdieedu 发表于 2023-12-23 18:31
baliao 发表于 2023-12-23 17:34
我使用这个接口去翻译,啥解密都不用,音标,短语,中文,造句全拔下来
http://dict.youdao.com/w/eng/

这个我看懂了嘿嘿
8#
FruitBaby 发表于 2023-12-23 19:27
下载下来研究研究,向楼主学习
9#
xigaizi 发表于 2023-12-23 23:08
不错,对学习研究有价值
10#
yu520 发表于 2023-12-24 12:55
这个怎么使用呀
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-21 21:09

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表