database_update.py 文件源码

python
阅读 17 收藏 0 点赞 0 评论 0

项目:noshazambot 作者: nikkonrom 项目源码 文件源码
def upload_list(audio_list):
    bot = telebot.TeleBot(config.bot_token)
    filename_mp3 = 'temp.mp3'
    filename_ogg = 'temp.ogg'    
    counter = 0
    start = time.time()

    for audio in list(audio_list):
        try:

            api_query = 'http://api.?.ws/api.php?method=get.audio&ids=' + str(audio[1]) + '_' + str(audio[0]) + '&key=' + config.audio_api_key
            api_callback = requests.get(api_query)
            if api_callback.text == 'wrong ids or Limit exceeded(10)' or api_callback.status_code != 200:
                audio_list.remove(audio)
                continue
            audio_url = (json.loads(api_callback.text))[0][2]
            if get_local_ogg(audio_url, filename_mp3, filename_ogg):
                audio_list.remove(audio)
                continue        

            stop = time.time()
            if stop - start < 1:    #avoiding of exeption: 'Too many requests'
                time.sleep(1)
            start = stop

            audio_file_id = upload_ogg(bot, filename_ogg)
            audio[11] = audio_file_id
            os.remove(filename_ogg)   
        except:
            audio_list.remove(audio)
            if os.path.exists(filename_ogg):
                os.remove(filename_ogg)
            continue

    with open('uploaded_list.txt', 'w') as outfile:
        json.dump(audio_list, outfile)
    return audio_list
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号