页面载入中,请稍后...

点我安装PWA
您已拒绝通知
    广告广告

    【Python url音乐流播放】

    qaq卟言2023-08-21 00:29:35 Python
    小人奔跑效果开始
    • 开发这个功能是想通过哔哩哔哩直播弹幕,实现播放url音乐流的功能
    • 当然这个只是播放音乐流的,可以自己完善一下对接文字转语音的功能,或者实现自动点歌
    • 我这里调用的是网易云音乐播放,需要自己完善一下获取音乐的uid
    • 创建脚本
    • touch main.py
    • 写入内容
    • """
      -------------------------------------------------
      # !~/桌面/弹幕
      # -*- coding: utf-8 -*-
      # @Time : 2023-08-20 21:57:14
      # @Author : buyan<buyan@mail.qaqbuyan.com>
      # @Description : url音乐流播放
      -------------------------------------------------
      """
      import io
      import eventlet
      import requests
      from pydub import AudioSegment
      from pydub.playback import play
      
      # 定义URL
      audio_url = 'http://music.163.com/song/media/outer/url?id=496869422.mp3'
      # 伪装请求头
      headers={"User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36"}
      # 使用requests库获取URL内容
      response = requests.get(audio_url,headers=headers)
      eventlet.monkey_patch()
      # 检查响应状态码
      if response.status_code == 200:
        # 通过内容类型检查是否为音频文件
        content_type = response.headers['Content-Type']
        if content_type.startswith('audio'):
          # 将响应内容写入临时文件
          with open('temp.mp3', 'wb') as f:
            f.write(response.content)
          # 使用pydub库打开音频文件
          audio = AudioSegment.from_file('temp.mp3')
          #使用pydub将音频数据转换为AudioSegment对象
          audio_data = AudioSegment.from_mp3(io.BytesIO(response.content))
          # 如果需要以秒为单位的时长
          duration_sec = len(audio) / 1000
          print(f'音频时长(秒):{duration_sec} 秒')
          with eventlet.Timeout(duration_sec,False):
            play(audio_data)
          # 停止播放音频
          play().stop()
          # 最后,删除临时文件
          # os.remove('temp.mp3')
        else:
          print('URL不包含音频文件。')
      else:
        print('无法访问URL。')
    • 运行脚本
    • python3 ./main.py
    • 运行效果
    • Python url音乐流播放1.png
    完结

    🔖本文来源:qaq卟言的个人博客网站声明如损害你的权益请联系我们

    ©️版权声明:本文为【qaq卟言】原创文章,写作不易,转载请您添加本文链接,谢谢您的合作!

    📜著作协议:《知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

    ⚠️部分文章图片来自网络,可能存在版权问题。如发现相关争议请联系qaq卟言处理!

    🔗

    广告广告

    随机文章

    该文章已经关闭评论,评论请前往留言信箱