• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글
질문

시놀로지 상에서 파이썬 스크립트 작성관련 질문드립니다

Ung2 Ung2 279

0

7

import requests 
url = "https://deepl-translator.p.rapidapi.com/translate"
 payload = {
    "text": "This is a example text for translation.",
    "source": "EN",
    "target": "ZH"
}
headers = {
    "content-type": "application/json",
    "X-RapidAPI-Key": "***************************************",
    "X-RapidAPI-Host": "deepl-translator.p.rapidapi.com"
}
 response = requests.post(url, json=payload, headers=headers)

print(response.json())

DeepL이라고 AI번역 사이트가 있는데 이게 우리나라에서는 API 모듈 결제 지원을 안합니다 (8월 상륙예정이라고는 하네요)

찾아보니깐 rapidapi.com에서 api결제하면 사용할수 있다고 해서 하긴 했는데

리눅스 명령어 몇개 끄적여 본게 다인 놈이 이걸 해보자니 코딩의 코짜도 몰라서 적용하기가 참 힘드네요

해당 코드가 특정 텍스트를 입력하면 번역해주는 사이트에서 제시한 예시인데(***은 받은 api키 값 입니다)

이걸 응용해서 시놀로지 내의 특정 디렉토리의 특정파일(txt,docx 등)을 번역해서 번역된 파일을 얻고싶습니다

 

시놀로지에서 파이썬 스크립트 실행해서 하려고 하는데요 

도와주시면 감사하겠습니다 ㅠ

신고공유스크랩
7
profile image 1등
네오펜 2023.05.29. 18:52
먼저 로컬컴퓨터에서 코드가 실행되는지 확인해보세요.

특정폴더 주기적으로 확인해서 파일이 있으면 번역 후 파일이동하는 방법으로 하면 될것같습니다.
profile image
네오펜 2023.05.29. 19:17
네오펜
파이썬 코드 아래와 같이 구분해서 개발 진행해보세요.

1 특정폴더 파일확인하는 부분
2 doc 파일 읽어오는 부분
3 번역하는 부분
4 파일 저장하는 부분
2등
purndal 2023.05.29. 19:00
어떤 사이트에서 보고 사용했는지를 알려주시면 더욱더 빠르게 알 수 있지않을까 생각됩니다.
지금 몇가지 사이트 돌아보면서 문제가 될만한것이

response = requests.post(url, json=payload, headers=headers) 라는 부분에 선언 되어진 것 중에

json 이라는게 보이네요.. 파이선에서 import 를 json 을 해주는 글을 보게 되었네요. 아마도 빠진것 같아요.
headers 는 그냥 사용해도 되는것 같아보이기도 하고 음...

처음부분 import 하는곳에

import json
import requests

위에 추가를 한번 해보시길 바래요.. 프로그래밍이라는것이 내가 생각하는데로 만들 수 있지만 그 규칙을
내생각에 맞게 할 수 없이 누군가가 정해놓은 규칙을 무조건 지켜야 하는 불편함이 있더라고요 ㅠㅠ;;
어렵습니다.. ㅠㅠ;;
앨런임더 2023.05.29. 19:57
purndal
request 모듈에서 json은 파이썬 내부에서 tuple이라는 클래스로 취급되기 때문에 딱히 json 모듈을 import해 줄 필요는 없습니다.
profile image 3등
빨간물약 2023.05.29. 19:22

import requests
import os
import shutil

url = "https://deepl-translator.p.rapidapi.com/translate"
payload = {
    "text": "",
    "source": "EN",
    "target": "ZH"
}
headers = {
    "content-type": "application/json",
    "X-RapidAPI-Key": "***************************************",
    "X-RapidAPI-Host": "deepl-translator.p.rapidapi.com"
}

folder_path = "번역할_폴더의_경로"  # 번역할 폴더의 경로를 지정합니다.
output_folder = "번역된_파일을_저장할_폴더의_경로"  # 번역된 파일을 저장할 폴더의 경로를 지정합니다.

for filename in os.listdir(folder_path):
    if filename.endswith(".txt"):
        file_path = os.path.join(folder_path, filename)
        with open(file_path, "r") as file:
            payload["text"] = file.read()

        response = requests.post(url, json=payload, headers=headers)

        translated_text = response.json().get("translations")[0].get("text")

        file_name = os.path.splitext(filename)[0]  # 파일 이름과 확장자를 분리합니다.
        translated_file_name = file_name + "_tr.txt"  # 번역된 파일 이름에 접미사를 추가합니다.

        translated_file_path = os.path.join(output_folder, translated_file_name)
        with open(translated_file_path, "w") as file:
            file.write(translated_text)

 

챗 GPT한테 이것저것 추가 해달라고 해서 만든 코드인데 실제로 작동 할지는 모르겠습니다만

특정 경로에 있는 TXT파일들을 전부 번역해서 저장 하는 코드입니다

text.txt 파일을 번역하면 text_tr.txt 라는 이름으로 설정된 폴더에 저장 되는 방식입니다만 정상 작동할지 모르겠습니다

 

앨런임더 2023.05.29. 20:08
해당 사이트의 API 문서를 봤는데, 파일 업로드 기능은 없는 것 같더라고요. txt 파일은 파일을 오픈해서 내용을 text에 집어넣어 주면 되는데, docx나 pdf 등은 다른 모듈을 추가하셔서 내용을 읽어오는 기능을 직접 추가하셔야 될 것 같네요.

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story
번호 분류 제목 글쓴이 날짜 조회 추천
공지 정보 DSM 7.2v) Mshell로 헤놀로지 부트로더 빌드하기. 62 달소 23.05.29.01:57 24835 +24
공지 정보 DSM 7.2v) ARPL-i18n(rr)으로 헤놀로지 부트로더 빌드하기. 73 달소 23.05.23.23:58 26415 +23
후기 ghost 블로그를 만들어 봤습니다 6 빨간물약 1일 전15:26 309 +3
후기 asustor에서 나온 nas에 dsm 올렸습니다... 4 링츠링링 4일 전18:45 409 +2
질문 Wireguard 관련해서 질문 드립니다! 2 리준 5일 전12:25 189 +1
5104 질문
normal
서브어린이 14시간 전12:00 75 0
5103 후기
image
빨간물약 1일 전15:26 309 +3
5102 질문
image
지축또타 1일 전13:44 303 0
5101 질문
image
김펭귄 1일 전08:48 129 0
5100 질문
normal
헤놀로지맨 1일 전07:21 193 0
5099 질문
normal
sabss 2일 전20:35 229 0
5098 질문
image
양미 2일 전18:47 112 0
5097 질문
file
지나가는_문과생 2일 전12:20 213 0
5096 질문
normal
툭툭이 3일 전14:32 118 0
5095 질문
normal
zip 3일 전13:40 83 0
5094 질문
normal
jinsol2 3일 전11:13 515 0
5093 질문
normal
M-M-M 3일 전09:15 68 0
5092 후기
image
링츠링링 4일 전18:45 409 +2
5091 질문
normal
nadomola 4일 전17:30 115 0
5090 질문
normal
Venzamin 4일 전11:40 188 0
5089 잡담
normal
서맹 4일 전09:42 486 0
5088 질문
image
초보나스 4일 전03:44 154 0
5087 질문
image
Noil 5일 전23:22 97 0
5086 질문
image
서브어린이 5일 전20:16 92 0
5085 질문
image
서브어린이 5일 전17:50 135 0