- import pandas as pd
- import requests
- from requests.auth import HTTPBasicAuth
-
- def translate_text(text, target_language, source_language, username, password):
- url = ""
- data = {
- "SourceLanguage": source_language,
- "TargetLanguage": target_language,
- "Contents": [text]
- }
-
- auth = HTTPBasicAuth(username, password)
-
- response = requests.post(url, json=data, auth=auth)
- if response.status_code == 200:
- translation = response.json()["result"][0][0]
- return translation
-
- else:
- return None
-
- # 填写认证信息
- username = ""
- password = ""
-
- # 读取Excel表格
- df = pd.read_excel(r"C:\Users\wangkejun\Desktop\DamaishujuCategoryKeyWord_20230901.xlsx")
-
- # 遍历每一行,翻译"Keyword"列的西班牙词语
- for index, row in df.iterrows():
- keyword = row["Keyword"]
-
- try:
- translated_keyword = translate_text(keyword, "zh-CN", "es", username, password) # 将西班牙语翻译成中文(简体)
-
- # 将翻译结果添加到"ChKeyword"列
- df.at[index, "ChKeyword"] = translated_keyword
- # 显示翻译结果
- print(f"翻译结果: {translated_keyword}")
- except:
- print(False)
-
- df = pd.read_excel(r"C:\Users\wangkejun\Desktop\20230901.xlsx")
这段代码使用 Python 的 pandas 库和 requests 库,
对 Excel 表格中的西班牙语关键词进行自动翻译,将其翻译成中文(简体),
然后将翻译结果储存在 Excel 表格中的"ChKeyword"列。
其中,表格数据从指定路径的 Excel 文件中读取。具体实现方式是遍历表格每一行,通过调用一个名为 translate_text 的函数来进行自动翻译。
返回的结果是 JSON 格式的数据。
translate_text 函数中使用了 HTTPBasicAuth 对象来传递认证信息。
如果翻译成功,将翻译结果添加到 DataFrame 表格中,并输出翻译结果;
如果翻译失败,则忽略该行不做处理。
最后,将带有翻译结果的 DataFrame 表格重新读取一次,以便将翻译结果写入原始文件中。