吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2401|回复: 17
收起左侧

[Java 原创] 爬有道翻译结果免登陆

  [复制链接]
459 发表于 2023-12-15 16:21
因工作需要,在看英/日文文档,愣是看不出所以然


写了个导入文档自动翻译生成新的文档,其中引用了如下的翻译方法,目前我自己测试是没什么限制


已知支持英汉互译,理论上支持各种外文译中,自测,我没需求,就没测试

就几行代码,写的不优雅,但确实可用,自己看吧,老规矩,单纯分享,大佬勿喷,谢谢啦~


附图:
英汉互译.png 日译中.png


代码:
[Java] 纯文本查看 复制代码
package org.example;

import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONObject;

public class Main {
    public static void main(String[] args) {
        // 待翻译的关键词
        String kerWord = "如果你有梦想的话,就必须捍卫它。那些一事无成的人总是想告诉你,你也成不了大器。如果你有理想的话,就要去努力实现。";

        String url = "http://m.youdao.com/translate"; // 构建搜索URL
        HttpRequest request = HttpRequest.post(url).form("inputtext", kerWord);

        HttpResponse response = request.execute();
        // 翻译结果的起始和结束文本
        String startText = "<ul id=\"translateResult\">\n                                                                        <li>";
        String endText = "</li>\n                                                            </ul>";

        String text = response.body();

        // 获取翻译结果的起始和结束位置
        int startIndex = text.indexOf(startText) + startText.length();
        int endIndex = text.indexOf(endText);
        // 判断是否找到翻译结果,并输出翻译结果
        if (startIndex != -1 && endIndex != -1 && startIndex < endIndex) {
            String middleText = text.substring(startIndex, endIndex);
            System.out.println("翻译结果为:" + middleText);
        } else {
            System.out.println("未找到匹配的起始和结束文本");
        }
    }

}



免费评分

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

查看全部评分

本帖被以下淘专辑推荐:

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

三滑稽甲苯 发表于 2023-12-15 17:05

Python 版本:

from bs4 import BeautifulSoup as bs
from requests import post

def translate(s):
    r = post("http://m.youdao.com/translate", data={"inputtext": s})
    r.encoding = r.apparent_encoding
    soup = bs(r.text, "html.parser")
    ele = soup.find("ul", {"id": "translateResult"})
    if ele:
        li = ele.find("li")
        if li:
            return li.text
    return ""

print(translate("hello"))

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
苏紫方璇 + 1 + 1 用心讨论,共获提升!

查看全部评分

zym01zym 发表于 2023-12-15 17:00
FruitBaby 发表于 2023-12-15 17:02
sdieedu 发表于 2023-12-15 19:43
三滑稽甲苯 发表于 2023-12-15 17:05
[md]Python 版本:

```python

厉害啊  简洁明了
turmasi1234 发表于 2023-12-16 07:40
膜拜啊,大佬,学习一下
Python666999 发表于 2023-12-16 09:06
已经不错了,我都写不出来
yu520 发表于 2023-12-16 10:39
可以破解有道会员吗
lg201937 发表于 2023-12-16 11:12
感谢分享 ..谢谢
 楼主| 459 发表于 2023-12-18 08:10
FruitBaby 发表于 2023-12-15 17:02
java的爬虫可以试试jsoup,很ok

好的  学习学习  谢谢
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-24 18:45

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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