저는 2 개의 자막 블록을 병합하여보다 쉬운 번역을 사용하려고합니다. 문장을 병합하고 종료 시간을 변경하는 동안 색인 번호를 변경하는 데 문제가 있습니다. count 변수는 증가하지만 인덱스에서 절대로 절대로 나오지 않습니다.문제가 생겼습니다. 2 자막 블록 병합
5
00:00:23,315 --> 00:00:25,108
A streetwise but soulful
teen needed somewhere to live
6
00:00:25,192 --> 00:00:26,610
as he waited for his Juilliard audition.
7
00:00:26,693 --> 00:00:29,488
We'd support his dancing and let
him stay in the guest room, right.
5, 6 병합 할 예정 : 우리는이 자막 블록이있는 경우 예를 들어
. 종료 시간 의지가 합병 때 그것은 내가 5와 6의 인덱스를 받아야입니다 대신 내가 5를 얻을 내가 할 노력하고있어 7.
예를 제외하고 잘 workjs 6의 :
5
00:00:23,315 --> 00:00:26,610
A streetwise but soulful
teen needed somewhere to live
as he waited for his Juilliard audition.
6
00:00:26,693 --> 00:00:29,488
We'd support his dancing and let
him stay in the guest room, right.
이것은 내 코드입니다. 나는 2 개의 장소를 추가하려고 시도했다, subs[sub.index].index = subs[sub.index] - count
를 시험해 보았다.
import pysrt
import os
count = 0
# Init pysrt
subs = pysrt.open(" Bojack Horseman36.srt")
# Go through each subtitle
for sub in subs:
try:
# Check if it's a sentence if not check if there is another sentence there if not nothing just remove index
sentence = None
if subs[sub.index].text.endswith('.') or subs[sub.index].text.endswith('?') or subs[sub.index].text.endswith('!'):
subs[sub.index].index - count
else:
subs[sub.index].text = subs[sub.index].text + '\n' + subs[sub.index+1].text
count+=1
subs[sub.index].index - count
subs[sub.index].end = subs[sub.index+1].end
del subs[sub.index+1]
except IndexError:
pass
subs.save('translatedsubs.srt', encoding='utf-8')
어떤 도움 것입니다
주시면 감사하는 감사 : D
병합 된 출력이 실제로 표시되어야하는 내용을 포함시킬 수 있습니까? 이해하면 훨씬 명확 해집니다. –
@MartinEvans 지금 확인하십시오 – MatejMecka