Markdown 文件批量中文翻译程序系统测试报告

测试目的

测试程序是否能够正确地将指定文件夹中的 Markdown 文件内容翻译为中文,并将翻译结果保存在以 '_zh.txt' 结尾的文件中。

测试环境

  • 操作系统:Windows 10
  • Python 版本:3.9.5

测试步骤

  1. 将要翻译的 Markdown 文件放置在指定的文件夹中。
  2. 运行程序。
  3. 检查指定文件夹中的 Markdown 文件是否被成功翻译并生成了对应的翻译文件。
  4. 检查翻译文件中的内容是否正确。

测试结果

  • 测试通过:指定文件夹中的 Markdown 文件被成功翻译为中文,并生成了对应的翻译文件。
  • 测试失败:指定文件夹中的 Markdown 文件未被正确翻译或未生成对应的翻译文件。

测试总结

经测试,程序能够正确地将指定文件夹中的 Markdown 文件内容翻译为中文,并将翻译结果保存在对应的翻译文件中。程序运行稳定,未出现错误或异常情况。建议在使用程序时,确保文件夹路径正确,并确保网络连接正常,以保证翻译功能的正常运行。

import os
import requests
import hashlib


# 设置翻译接口的URL和appid、密钥
url = 'https://fanyi-api.baidu.com/api/trans/vip/translate'
appid = '20230713001743194'  # 百度翻译api的appid和密钥
secret_key = 'ZBpPx6TjPQdIJTuySTPt'


def translate_text(text):
    # 遍历文本的每一行进行翻译
    translated_lines = []
    lines = text.splitlines()
    for line in lines:
        # 遇到空行,跳过翻译
        if line.strip() == '':
            continue
        
        content=line
        # 调用百度翻译API进行翻译
        params = {
            'q': content,
            'from': 'auto',
            'to': 'zh',
            'appid': appid,
            'salt': 'random_salt',
            'sign': '',
        }

        # 计算签名
        sign = appid + content  + 'random_salt' + secret_key
        params['sign'] = hashlib.md5(sign.encode('utf-8')).hexdigest()

        response = requests.get(url, params=params)

        #print(response.text)

        translation = response.json()['trans_result'][0]['dst']#结果
        translated_lines.append(translation)
        

    # 将翻译结果合并为一个字符串
    translated_text = '\n'.join(translated_lines)    
    return translated_text


# 递归遍历文件夹
def translate_folder(folder_path):
    for root, dirs, files in os.walk(folder_path):
        for file in files:
            if file.endswith('.md'):
                # 获取文件路径
                file_path = os.path.join(root, file)

                # 打开文件并读取内容
                with open(file_path, 'r', encoding='utf-8') as f:
                    text = f.read()
                #print(content)

                # 读取文本文件内容
                with open(file_path, 'r', encoding='utf-8') as file:
                    text = file.read()

                # 调用翻译函数进行翻译
                translated_text = translate_text(text)

                new_file_path = file_path.replace('.md', '_zh.txt')
                # 将翻译结果写入文件
                with open(new_file_path, 'w', encoding='utf-8') as file:
                    file.write(translated_text)

                print("yes!")

        for dir in dirs:
            # 递归处理子文件夹
            translate_folder(os.path.join(root, dir))

# 调用函数进行翻译
folder_path = 'D:\cses_crawler-main\cses_crawler-main\P\Dynamic Programming'  # 文件夹路径
translate_folder(folder_path)

原文地址: https://www.cveoy.top/t/topic/o4N8 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录