Spaces:
Runtime error
Runtime error
| import json, os | |
| from tencentcloud.common import credential | |
| from tencentcloud.common.profile.client_profile import ClientProfile | |
| from tencentcloud.common.profile.http_profile import HttpProfile | |
| from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException | |
| from tencentcloud.tmt.v20180321 import tmt_client, models | |
| def get_tmt_client(): | |
| try: | |
| # 实例化一个认证对象,入参需要传入腾讯云账户 SecretId 和 SecretKey,此处还需注意密钥对的保密 | |
| # 代码泄露可能会导致 SecretId 和 SecretKey 泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考,建议采用更安全的方式来使用密钥,请参见:https://cloud.tencent.com/document/product/1278/85305 | |
| # 密钥可前往官网控制台 https://console.cloud.tencent.com/cam/capi 进行获取 | |
| SecretId = os.environ.get("TENCENTCLOUD_SECRET_ID") | |
| SecretKey = os.environ.get("TENCENTCLOUD_SECRET_KEY") | |
| cred = credential.Credential(SecretId, SecretKey) | |
| # 实例化一个http选项,可选的,没有特殊需求可以跳过 | |
| httpProfile = HttpProfile() | |
| httpProfile.endpoint = "tmt.tencentcloudapi.com" | |
| # 实例化一个client选项,可选的,没有特殊需求可以跳过 | |
| clientProfile = ClientProfile() | |
| clientProfile.httpProfile = httpProfile | |
| # 实例化要请求产品的client对象,clientProfile是可选的 | |
| client = tmt_client.TmtClient(cred, "ap-shanghai", clientProfile) | |
| print(f'client_{client}') | |
| return client | |
| except TencentCloudSDKException as err: | |
| print(f'client_err_{err}') | |
| return None | |
| def getTextTrans_tmt(tmt_client, text, source='zh', target='en'): | |
| def is_chinese(string): | |
| for ch in string: | |
| if u'\u4e00' <= ch <= u'\u9fff': | |
| return True | |
| return False | |
| if tmt_client is None: | |
| return text | |
| if not is_chinese(text) and target == 'en': | |
| return text | |
| try: | |
| req = models.TextTranslateRequest() | |
| params = { | |
| "SourceText": text, | |
| "Source": source, | |
| "Target": target, | |
| "ProjectId": 0 | |
| } | |
| req.from_json_string(json.dumps(params)) | |
| resp = tmt_client.TextTranslate(req) | |
| return resp.TargetText | |
| except Exception as e: | |
| return text |