-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsubs-editor-v1-archived.py
46 lines (42 loc) · 1.44 KB
/
subs-editor-v1-archived.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import pandas as pd
import numpy as np
fname = input('目前只支持单人台词,请输入csv文件名称(不带后缀):')
option = input('1.csv转txt(台词本)\n2.csv转srt(砍音频)\n请选择操作:')
fn = fname + '.csv'
subs = pd.read_csv(fn, header=None)
subs_arr = np.array(subs)
if option == '1':
csv_to_txt_list = list()
cp_ls = list()
for row in range(subs_arr.shape[0]):
cp_ls.append(subs_arr[row][0])
if row == 0:
csv_to_txt_list.append(subs_arr[row][2])
else:
diff = cp_ls[row] - cp_ls[row-1]
if diff == 1:
csv_to_txt_list.append(' ')
else:
csv_to_txt_list.append('\n')
csv_to_txt_list.append(subs_arr[row][2])
ftxt = fname + '.txt'
f1 = open(ftxt, 'w')
csv_to_txt_list = ''.join(csv_to_txt_list)
f1.write(csv_to_txt_list)
f1.close()
print('台词本已生成!')
if option == '2':
csv_to_srt_list = list()
for row in range(subs_arr.shape[0]):
csv_to_srt_list.append(str(row+1))
csv_to_srt_list.append('\n')
csv_to_srt_list.append(subs_arr[row][1])
csv_to_srt_list.append('\n')
csv_to_srt_list.append(subs_arr[row][2])
csv_to_srt_list.append('\n\n')
fsrt = fname + '.srt'
f2 = open(fsrt, 'w')
csv_to_srt_list = ''.join(csv_to_srt_list)
f2.write(csv_to_srt_list)
f2.close()
print('字幕文件已生成!')