def search_word(bson_id): bson_id = bson.objectid.ObjectId(bson_id) db_words = mymongo.pymg('mynihongo1', 'words') searched_word = db_words.find_one({'_id': bson_id}) data = { 'tags': '/'.join(searched_word['tags']), 'meaning': searched_word['meaning'], 'Nx': searched_word['Nx'], 'raw_word': searched_word['mecab'][7], 'this_word': searched_word['mecab'][0], 'speak': searched_word['mecab'][-2], } return data
from pydub import AudioSegment from tool import mymongo input_path = "/Users/user/language/sp/MagicKaito" nx_data = list( mymongo.pymg('mynihongo1', 'sentences').find({'sentence_Nx': { '$nin': ['not in Nx'] }}))[:315] for index, x in enumerate(nx_data): print(index) # mp3 = AudioSegment.from_mp3('/Users/user/language/sp/MagicKaito/moshu01.mp3') # 打开mp3文件 # # base_pydub = "mp3[{start}*1000:{end}*1000].export('{out_mp3_path}', format='mp3')" # this_pydub = base_pydub.format( # start = x['start_seconds'], # end = x['end_seconds'], # out_mp3_path = input_path+'/split/'+'moshu01_'+str(index)+'.mp3', # ) # exec(this_pydub)
if float(time[0])<2: a = -0.2 b = 5.3 else: a = -2.2 b = 4.2 base_ffmpeg_split = "ffmpeg -i {input_path} -vcodec copy -acodec copy -ss {start} -to {end} {out_path} -y" this_ffmpeg = base_ffmpeg_split.format( input_path = input_mp4_path, start = float(time[0])+a, end = float(time[1])+b, out_path = out_path, ) os.system(this_ffmpeg) input_path = '/Users/user/language/sp/动漫/言叶之庭/kodoba.mp4' for x in mymongo.pymg('mynihongo2','subs').find({'name':'言叶之庭'}): times = [x['start_seconds'],x['end_seconds']] split_video(times,input_path,'/Users/user/language/sp/动漫/言叶之庭/mp4_split/{}.mp4'.format(str(x['index']))) # input_path = "/Users/user/language/sp/MagicKaito" # nx_data = list(mymongo.pymg('mynihongo1','sentences').find({'sentence_Nx':{'$nin':['not in Nx']}}))[:31] # for index,x in enumerate(nx_data): # print(index) # print(x['_id']) # base_ffmpeg_split = "ffmpeg -i {input_path} -vcodec copy -acodec copy -ss {start} -to {end} {out_path} -y" # this_ffmpeg = base_ffmpeg_split.format( # input_path = input_path+'/moshu01.mp4',
from tool import mymongo from tool.toolJp import kanaTrans import re # 1. 平假名转片假名 # for each in mymongo.pymg('mynihongo1','raw_sgk').find(): # if each['raw'][0] in kanaTrans.pianjiaming and each['raw'][-1] in kanaTrans.pianjiaming: # print(each['raw']) # read = re.sub(r"・", '', each['raw']) # # each['hiragana'] = kanaTrans.trans(read) 不对 # mymongo.pymg('mynihongo1','raw_sgk').update({'_id': each['_id']},{'$set': {'hiragana':kanaTrans.trans(read)}}) # # 2. mecab backup dict_backup_03 for each in mymongo.pymg('mynihongo1', 'raw_sgk').find({'can_mecab': { '$exists': False }}): word = aboutMecab.SentenceToMecab(each['raw']).start() if len(word) == 1 and word[0][-1] == each['hiragana']: if len(word[0]) == 11: mymongo.pymg('mynihongo1', 'raw_sgk').update({'_id': each['_id']}, {'$set': { 'mecab': word[0] }}) mymongo.pymg('mynihongo1', 'raw_sgk').update({'_id': each['_id']}, {'$set': { 'can_mecab': 1 }}) print(word)
from tool import mymongo from tool import baiduTranslate from tool.toolJp import aboutMecab from db.words.expand import ExpandWords from db.words.meet import MeetWords from db.words.base import Words from db.sentences.video import VideoSentences db_words = mymongo.pymg('mynihongo1', 'words') def trans_word(to_trans_word): to_trans_word.meaning = baiduTranslate.bd_tanslate(to_trans_word.raw) def trans_sentence(to_trans_sentence): to_trans_sentence.sentence_cn = baiduTranslate.bd_tanslate( to_trans_sentence.sentence_jp) def get_word(each): q1 = {'mecab': each} finded_word = db_words.find_one(q1) # '单词数据库里不存在该单词' if finded_word: word_cls = finded_word['_cls'].split('.')[-1] # Words.objects(mecab = word_mecab) 只能查找Words类 old_word = eval(word_cls + '''.objects(mecab = each).first()''') return old_word else: # 属于派生
from tool import mymongo from db.words.base import Words # 1. words_backup_01 for each in mymongo.pymg('mynihongo1', 'raw_sgk').find({'can_mecab': 1}): w = Words() w.raw = each['raw'] w.hiragana = each['hiragana'] w.mecab = each['mecab'] w.tags = [x for x in each['mecab'][1:-4] if x != '*'] w.meaning = each['meaning'] try: w.Nx = each['Nx'] except: try: w.Nx = 'S' + str(each['import']) except: w.Nx = 'S0' w.save()
from pydub import AudioSegment import os, re # 打开mp3文件 mp3 = AudioSegment.from_mp3('/Users/user/language/sp/turan/3.mp3') # 切割前17.5秒并覆盖保存 from tool import mymongo input_path = '/Users/user/language/sp/turan/3.mp3' for x in mymongo.pymg('mynihongo2', 'subs').find({'name': '徒然喜欢你03'}): mp3_path = '/Users/user/language/sp/turan/mp3_split3/{}.mp3'.format( str(x['index'])) mp3[float(x['start_seconds']) * 1000:float(x['end_seconds']) * 1000].export(mp3_path, format="mp3")