需要把字幕名改成i.txt

有有道和谷歌

代码:

  1. #Author:Chenglong Qian
  2. #Copyright :Chenglong Qian
  3. import json
  4. import requests
  5. import re
  6. import os
  7. import sys
  8. from GoogleFreeTrans import Translator
  9.  
  10. def google(ttt):
  11. translator = Translator.translator(src='auto', dest='zh-CN')
  12. return translator.translate(ttt)
  13.  
  14. num=392
  15. def translator(str):
  16. """
  17. input : str 需要翻译的字符串
  18. output:translation 翻译后的字符串
  19. 有每小时1000次访问的限制
  20. """
  21. global num;
  22. num=num+1
  23. # API
  24. url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=null'
  25. # 传输的参数, i为要翻译的内容
  26. key = {
  27. 'type': "AUTO",
  28. 'i': str,
  29. "doctype": "json",
  30. "version": "2.1",
  31. "keyfrom": "fanyi.web",
  32. "ue": "UTF-8",
  33. "action": "FY_BY_CLICKBUTTON",
  34. "typoResult": "true"
  35. }
  36. # key 这个字典为发送给有道词典服务器的内容
  37. response = requests.post(url, data=key)
  38. # 判断服务器是否相应成功
  39. if response.status_code == 200:
  40. # 通过 json.loads 把返回的结果加载成 json 格式
  41. result = json.loads(response.text)
  42. translation = result['translateResult'][0][0]['tgt']
  43. return translation
  44. else:
  45. print("有道词典调用失败")
  46. # 相应失败就返回空
  47. return None
  48.  
  49. f = open("i.txt","r", encoding='UTF-8')
  50. txtstr = f.read() #将txt文件的所有内容读入到字符串txtstr中
  51. f.close()
  52.  
  53. list = txtstr.split('\n')
  54. print(list)
  55.  
  56. q=input("选择翻译平台:1.有道 2.谷歌")
  57. q=int(q)
  58.  
  59. j=0
  60. for uchar in list:
  61. if (uchar >= u'\u0041' and uchar<=u'\u005a') or (uchar >= u'\u0061' and uchar<=u'\u007a'):
  62.  
  63. if q==1:
  64. china=translator(uchar)
  65. elif q==2:
  66. china=google(uchar)
  67. list[j]=china
  68. print(china)
  69.  
  70. j=j+1
  71.  
  72. txt=""
  73. for i in list:
  74. txt=txt+'\n'+i
  75.  
  76. print(txt)
  77.  
  78. f = open("china.txt","x")
  79.  
  80. with open('china.txt','w', encoding='UTF-8') as f: #设置文件对象
  81. f.write(txt)

srt字幕翻译的更多相关文章

  1. SRT字幕格式

    [时间:2019-03] [状态:Open] [关键词:字幕,SRT,文件格式] 0 引言 视频文件中最简单.最常见的外挂字幕格式是SRT(SubRip Text).本人找了好久也没找到类似的标准文档 ...

  2. 【Win 10 应用开发】加载外部的 srt 字幕

    据说系统内置的多媒体功能支持 srt. ssa 等字幕,老周测试过几种格式的字幕均能加载. SRT 字幕是最简单的字幕结构,甚至你用记事本都能做出来,就是分为几行来写. 第一行是字幕的编号,应该是从1 ...

  3. webvtt字幕转srt字幕的python程序(附改名程序)

    最近写了两个比较简单的python程序,原有都是由于看公开课感觉比较费劲,一个是下载的视频无用的名字太长,另一个就是下载的vtt字幕播放器不识别,写了一个vtt转换成str字幕格式的文件 vtt to ...

  4. Srt字幕文件解析

    // // ViewController.m // 字幕解析 // // Created by admin on 2018/8/30. // Copyright © 2018年 admin. All ...

  5. 关于vtt 与 srt 字幕 的相互转换

    我在下载的udacity中教程时,字幕和视频是分离的,对于英文还无法完全听懂的我来说,字幕还是比较重要.不想看解释的可直接跳到最后复制代码运行即可. 查看了vtt和srt的区别,使用记事本打开vtt和 ...

  6. 探究:Adobe Premiere Pro CC 2018 导入SRT字幕显示不全问题

    问题:如果使用PR,大概率会遇到导入SRT格式的字幕文件后,PR里面显示的字幕不完整,字幕丢失的问题. 探究:字幕文件的内容正常,导入PR后字幕出现丢失. 查看字幕文件,并测试,发现如下图,如果出现字 ...

  7. [UWP小白日记-5]转换MVA学院的XML字幕为SRT

    开源地址:第二版开源地址GIT 暂时用不了了,在最新的WIN10 10586.494系统上回闪退,正在酝酿第二版 O(∩_∩)O哈哈~ 新版已经完工:第二版 地方MVA上好多教程,但是微软的所有中国网 ...

  8. [tool] AI视频翻译 解决英文视频字幕问题(类似youtube自动生成字幕)

    1.网易见外是网易人工智能事业部旗下的AI视频翻译产品. 字幕支持手工编辑和下载 不过网易见外 只支持WEB在线操作 并且只支持单个上传操作 目前没有客户端 2.人人译视界 (IOS 安卓 PC客户端 ...

  9. c#调用ffmpeg嵌入srt/ass字幕提示Unable to open xxx.srt......

    最近接触到c#调用ffmpeg嵌入srt/ass字幕,碰到一个错误困扰了很久 Unable to open xxx.srt Error initializing filter 'subtitles' ...

随机推荐

  1. Android适配器

    Android适配器 安卓的适配器在我看来是一个非常重要的知识点,面对形式相同但数据源较多的情况时,适配器是一个比较好的解决方法.数据适配器是建立了数据源与控件之间的适配关系,将数据源转换为控件能够显 ...

  2. arcgis server10.7修改打印模板后前台调用不生效

    在10.5.1及之前的版本中,如果更改打印地图模板,如字体设置,那么直接修改[ArcGIS for Server 安装目录]/Templates/ExportWebMapTemplates下的mxd的 ...

  3. 一文读懂什么是CA证书

    Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable ...

  4. MATLAB 概率论题

    1. 用模拟仿真的方法求解 clc clear tic n=0; N=100000; for ii=1:N b='MAXAM'; %字符串格式 a=randperm(5); % b=[b(a(1)), ...

  5. Python——office编程

    一.office编程需求 二.Excel编程 import xlrd path=input("输入路径:") workbook=xlrd.open_workbook(path)#打 ...

  6. 浅谈Java参数传递机制

    Java参数传递 ​ 才疏学浅,今天才知道Java中方法的参数是可以传递对象引用进去的. ​ Java的参数传递机制很简单,其实就是值传递. ​ 所谓值传递,也就是我们在给方法传递一个参数的时,传递的 ...

  7. git 从另一个分支融合部分文件

    # git checkout master # git checkout anotherBranch -- abc ./etc # git commit -m "merge some fil ...

  8. Ceph学习笔记(3)- Monitor

    Ceph学习笔记(3)- Monitor 前言: ​ Ceph将cluster map与placement rule合并为一张表称为crush map,作为集群表的一部分.由Monitor对集群表的副 ...

  9. html的嵌套规则

    html元素分为块状元素和内联元素,块状元素作为其他元素的容器. 块状元素可以嵌套其他块状元素 块状元素可以嵌套内联元素 内联元素不能嵌套块状元素 p内不能嵌套块状元素 有几个特殊块状元素只能包含内联 ...

  10. MySQL入门,第五部分,表结构的修改

    ALTER TABLE <基本表名> [ ADD <新列名> <列数据类型> [列完整性约束] DROP COLUMN <列名> MODIFY < ...