迎战2022 - Python中文翻译《环球时报》整篇文章实战演示,调用有道翻译API接口进行英文转中文翻译实例训练

简介: 迎战2022 - Python中文翻译《环球时报》整篇文章实战演示,调用有道翻译API接口进行英文转中文翻译实例训练

第一章:翻译效果展示

① 翻译文章示例一【得益于中国援助的数字电视,喀麦隆农村社区享受着非洲国家杯】

文章:得益于中国援助的数字电视,喀麦隆农村社区享受着非洲国家杯


158236fd3533402784efdda103b44871.png

33ac4abe298c4131a5774599985c4635.png


翻译后的效果:


103a80cf6ba143bb98cad60b4e39176e.png

② 翻译文章示例二【有关中国传统文化的节目深受年轻观众的欢迎】

文章:有关中国传统文化的节目深受年轻观众的欢迎

33fe09c3de674357a01c8b83808377a7.png


image.png

翻译后的效果:

image.png

第二章:实现

① 文章结构分析

我们可以看到文章标题在 class 属性为 "article_title"div 元素里。

image.png


正文内容在 class"article_right"div 元素里。


f72d1f130ba840e3a27936173225c427.png

② 文章内容爬取

利用 BeautifulSoup 库对内容进行爬取。

bs4 模块通过 pip install bs4 即可进行安装。

注:文章内注释的翻译部分的代码就是后面要用到的翻译接口。

from urllib.request import urlopen
from bs4 import BeautifulSoup
def article_structure(article_url):
    """
     小蓝枣, 2022.1.24
    【作用】
     对传入网站的文章内容进行爬取
    【参数】
     article_url : 需要进行翻译的外文网址
    【返回】
    """
    url = urlopen(article_url)
    soup = BeautifulSoup(url, 'html.parser')   # parser 解析
    # 读取文章标题
    alert_header = soup.find('div', class_="article_title")
    print("【文章标题】:")
    print(alert_header.string)
    # print("[英文翻译]")
    # print(english_translator(alert_header.string))
    # 读取文章正文
    alert_body = soup.find('div', class_="article_right").contents
    print("\n【文章正文】:")
    for i in alert_body:
        # String类型的,并且不包含空格和回车
        if("String" in str(type(i)) and i[0] != " " and i[0] != "\n"):
            print("---------")
            print(i)
            # print("[英文翻译]")
            # print(english_translator(i))
            print()
article_structure("https://www.globaltimes.cn/page/202201/1246696.shtml")

部分代码解析:

文章正文的部分是没有元素包裹的纯文本,用 "String" in str(type(i)) 就可以筛选出来,还有空格内容和回车内容再过滤一下就好了。

这是爬取后的文章:

079f37fa9d774c83b0be3fd5d7304831.png

③ 有道翻译接口

翻译接口如下,json 参数里面的 from,设置为英文用的是 en

实现过程,还有有道 api 的配置过程可以看这篇文章:

有道翻译 API 接口的服务开通与使用 Python 进行接口调用实例演示,有道智云·AI 开放平台

import requests
import time
import hashlib
import uuid
def english_translator(translate_text):
    """
     小蓝枣, 2022.1.24
    【作用】
     将传入的英文内容翻译为中文
    【参数】
     translate_text : 需要进行翻译的中文
    【返回】
     翻译后的中文
    """
    youdao_url = 'https://openapi.youdao.com/api'   # 有道api地址
    input_text = ""   # 翻译文本生成sign前进行的处理
    # 当文本长度小于等于20时,取文本
    if(len(translate_text) <= 20):
        input_text = translate_text
    # 当文本长度大于20时,进行特殊处理
    elif(len(translate_text) > 20):
        input_text = translate_text[:10] + str(len(translate_text)) + translate_text[-10:]
    app_id = "xxx"   # 应用id
    app_key = "xxx"   # 应用密钥
    time_curtime = int(time.time())   # 秒级时间戳获取
    uu_id = uuid.uuid4()   # 随机生成的uuid数,为了每次都生成一个不重复的数。
    sign = hashlib.sha256((app_id + input_text + str(uu_id) + str(time_curtime) + app_key).encode('utf-8')).hexdigest()   # sign生成
    data = {
        'q':translate_text,
        'from':"en",
        'to':"zh-CHS",
        'appKey':app_id,
        'salt':uu_id,
        'sign':sign,
        'signType':"v3",
        'curtime':time_curtime,
    }
    r = requests.get(youdao_url, params = data).json()   # 获取返回的json()内容
    return r["translation"][0]   # 获取翻译内容

喜欢的点个赞❤吧!


目录
相关文章
|
7月前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
878 7
|
7月前
|
缓存 监控 前端开发
顺企网 API 开发实战:搜索 / 详情接口从 0 到 1 落地(附 Elasticsearch 优化 + 错误速查)
企业API开发常陷参数、缓存、错误处理三大坑?本指南拆解顺企网双接口全流程,涵盖搜索优化、签名验证、限流应对,附可复用代码与错误速查表,助你2小时高效搞定开发,提升响应速度与稳定性。
|
7月前
|
数据采集 Web App开发 数据安全/隐私保护
实战:Python爬虫如何模拟登录与维持会话状态
实战:Python爬虫如何模拟登录与维持会话状态
|
7月前
|
JSON 算法 API
Python采集淘宝商品评论API接口及JSON数据返回全程指南
Python采集淘宝商品评论API接口及JSON数据返回全程指南
|
7月前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
706 0
|
7月前
|
人工智能 自然语言处理 测试技术
Apipost智能搜索:只需用业务语言描述需求,就能精准定位目标接口,API 搜索的下一代形态!
在大型项目中,API 数量庞大、命名不一,导致“找接口”耗时费力。传统工具依赖关键词搜索,难以应对语义模糊或命名不规范的场景。Apipost AI 智能搜索功能,支持自然语言查询,如“和用户登录有关的接口”,系统可理解语义并精准匹配目标接口。无论是新人上手、模糊查找还是批量定位,都能大幅提升检索效率,降低协作成本。从关键词到语义理解,智能搜索让开发者少花时间找接口,多专注核心开发,真正实现高效协作。
|
8月前
|
数据可视化 测试技术 API
从接口性能到稳定性:这些API调试工具,让你的开发过程事半功倍
在软件开发中,接口调试与测试对接口性能、稳定性、准确性及团队协作至关重要。随着开发节奏加快,传统方式已难满足需求,专业API工具成为首选。本文介绍了Apifox、Postman、YApi、SoapUI、JMeter、Swagger等主流工具,对比其功能与适用场景,并推荐Apifox作为集成度高、支持中文、可视化强的一体化解决方案,助力提升API开发与测试效率。
|
7月前
|
JSON API 数据安全/隐私保护
Python采集淘宝拍立淘按图搜索API接口及JSON数据返回全流程指南
通过以上流程,可实现淘宝拍立淘按图搜索的完整调用链路,并获取结构化的JSON商品数据,支撑电商比价、智能推荐等业务场景。
|
8月前
|
JSON 前端开发 API
如何调用体育数据足篮接口API
本文介绍如何调用体育数据API:首先选择可靠服务商并注册获取密钥,接着阅读文档了解基础URL、端点、参数及请求头,然后使用Python等语言发送请求、解析JSON数据,最后将数据应用于Web、App或分析场景,同时注意密钥安全、速率限制与错误处理。
859 152
|
9月前
|
JSON 算法 安全
淘宝商品详情API接口系列,json数据返回
淘宝开放平台提供了多种API接口用于获取商品详情信息,主要通过 淘宝开放平台(Taobao Open Platform, TOP) 的 taobao.tbk.item.info.get(淘宝客商品详情)或 taobao.item.get(标准商品API)等接口实现。以下是关键信息及JSON返回示例:

推荐镜像

更多