459 发表于 2023-12-15 16:21

爬有道翻译结果免登陆

{:301_973:}因工作需要,在看英/日文文档,愣是看不出所以然{:301_972:}
https://static.52pojie.cn/static/image/hrline/4.gif

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


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

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


附图:



代码:
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("未找到匹配的起始和结束文本");
      }
    }

}


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

Python 版本:

```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"))
```

zym01zym 发表于 2023-12-15 17:00

很棒啊!

FruitBaby 发表于 2023-12-15 17:02

java的爬虫可以试试jsoup,很ok

sdieedu 发表于 2023-12-15 19:43

三滑稽甲苯 发表于 2023-12-15 17:05
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

好的学习学习谢谢
页: [1] 2
查看完整版本: 爬有道翻译结果免登陆