Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python粉丝数实时播报程序

Python粉丝数实时播报程序

作者头像
MoyiTech
发布于 2023-02-02 03:06:59
发布于 2023-02-02 03:06:59
37900
代码可运行
举报
文章被收录于专栏:科技日常科技日常
运行总次数:0
代码可运行

源码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import requests
import time

import sys
from playsound import _playsoundWin

# 保证兼容python2以及python3
IS_PY3 = sys.version_info.major == 3
if IS_PY3:
    from urllib.request import urlopen
    from urllib.request import Request
    from urllib.error import URLError
    from urllib.parse import urlencode
    from urllib.parse import quote_plus
else:
    import urllib2
    from urllib import quote_plus
    from urllib2 import urlopen
    from urllib2 import Request
    from urllib2 import URLError
    from urllib import urlencode


def hechng(res):
    # 替换你的 API_KEY(百度开放平台)
    API_KEY = '替换你的 API_KEY'

    # 替换你的 SECRET_KEY(百度开放平台)
    SECRET_KEY = '替换你的 API_KEY'

    # 大姚的订单信息内容文本
    TEXT = res

    TTS_URL = 'http://tsn.baidu.com/text2audio'

    """  TOKEN start """

    TOKEN_URL = 'http://openapi.baidu.com/oauth/2.0/token'

    """
        获取token
    """

    def fetch_token():
        params = {'grant_type': 'client_credentials',
                  'client_id': API_KEY,
                  'client_secret': SECRET_KEY}
        post_data = urlencode(params)
        if (IS_PY3):
            post_data = post_data.encode('utf-8')
        req = Request(TOKEN_URL, post_data)
        try:
            f = urlopen(req, timeout=5)
            result_str = f.read()
        except URLError as err:
            print('token http response http code : ' + str(err.code))
            result_str = err.read()
        if (IS_PY3):
            result_str = result_str.decode()

        result = json.loads(result_str)

        if ('access_token' in result.keys() and 'scope' in result.keys()):
            if not 'audio_tts_post' in result['scope'].split(' '):
                print('please ensure has check the tts ability')
                exit()
            return result['access_token']
        else:
            print('please overwrite the correct API_KEY and SECRET_KEY')
            exit()

    """  TOKEN end """

    if __name__ == '__main__':

        token = fetch_token()

        tex = quote_plus(TEXT)  # 此处TEXT需要两次urlencode

        params = {'tok': token, 'tex': tex, 'cuid': "quickstart",
                  'lan': 'zh', 'ctp': 1}  # lan ctp 固定参数

        data = urlencode(params)

        req = Request(TTS_URL, data.encode('utf-8'))
        has_error = False
        try:
            f = urlopen(req)
            result_str = f.read()

            headers = dict((name.lower(), value) for name, value in f.headers.items())

            has_error = ('content-type' not in headers.keys() or headers['content-type'].find('audio/') < 0)
        except  URLError as err:
            print('http response http code : ' + str(err.code))
            result_str = err.read()
            has_error = True

        save_file = "error.txt" if has_error else u'tmp.mp3'

        with open(save_file, 'wb') as of:
            of.write(result_str)

        if has_error:
            if (IS_PY3):
                result_str = str(result_str, 'utf-8')
            print("tts api  error:" + result_str)

        print("file saved as : " + save_file)

        _playsoundWin('tmp.mp3')
        # playsound('tmp.mp3')


time.sleep(10)
res = requests.get('https://api.bilibili.com/x/relation/stat?vmid=128723428&jsonp=jsonp')
res = res.json()
res = res['data']['follower']
print(res)

while True:
    time.sleep(1)
    tmp = requests.get('https://api.bilibili.com/x/relation/stat?vmid=128723428&jsonp=jsonp')
    tmp = tmp.json()
    tmp = tmp['data']['follower']
    print(tmp)
    # if os.path.exists('tmp.mp3'):
    #     os.remove('tmp.mp3')
    if tmp > res:
        hechng('粉丝数增加了' + str(tmp - res) + ',目前粉丝数' + str(tmp))
        res = tmp
    if tmp < res:
        hechng('粉丝数减少了' + str(res - tmp) + ',目前粉丝数' + str(tmp))
        res = tmp
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python实现文字转语音
前言创建应用获取应用的API Key和Secret Key编写python代码替换API Key和Secret Key生成的音频文件
用户7886150
2020/12/28
5.4K0
【Qbot】3.加入内容审核功能
在ChatGPT上线Q群不久,不少人对其进行了测试,但随着时间的延续,测试话题逐渐走向失控,迫使我不得不紧急暂停。 对同胞素质的过高预期换来的往往是无下限的不断试探,因此加入内容审查功能变得至关重要。
zstar
2022/12/21
7430
【Qbot】3.加入内容审核功能
文字转语音——这招你学到了吗
我喜欢上了看小说,不知道为什么,这是一个谜,(因为我是谜一样的男人,哈哈),看着看着感觉眼皮在打架,突然我想,要是有一个人可以阅读就好了(这里我们明显感觉小编与世界脱轨),那不如写一个自动阅读的软件好了,然后就有了语音阅读神器。
大家一起学编程
2021/03/29
2.9K0
调用 Baidu 语音识别接口识别短句
采用领先国际的流式端到端语音语言一体化建模方法,融合百度自然语言处理技术,近场中文普通话识别准确率达98%
为为为什么
2023/06/27
9950
调用 Baidu 语音识别接口识别短句
基于http的百度语音 REST api
什么是REST api? -- REpresentational State Transfer REST api是基于http请求的一种api,就百度语音识别的实例来讲,通过百度提供的url加上经过编码的音频文件,向百度服务器发出请求,然后百度服务器返回识别的内容。结束。
Mshu
2018/10/31
2.3K0
用Python写一个百度POST实时推送工具
想抄就抄吧 以下是代码 import urllib,urllib2 import json,time,re # 转载请注明出处 def GetURL(geturl,pat):#获取文章的列表 response = urllib2.urlopen(geturl).read() result = re.findall(pat,response) return result # Write By ITJoker # Domain:https://www.itjoker.cn def p
ITJoker
2022/08/30
4180
AI图像识别_头像搜索图片识别在线
使用百度AI图像识别提供的API接口来搭建识图工具,首先要注册百度开发者账号,然后找到图像识别页面,创建应用,申请成功后会给两个重要的数据API Key ,Secret Key,这是实现识图的重要参数,以动物识别为例:
全栈程序员站长
2022/09/20
3.8K0
AI图像识别_头像搜索图片识别在线
python之web模块学习-- url
  下面继续学习python的web模块 ---  urllib2,一个源于urllib又高于urllib的模块。
py3study
2020/01/09
8820
urllib与urllib2的学习总结(python2.7.X)
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说urllib与urllib2的学习总结(python2.7.X),希望能够帮助大家进步!!!
Java架构师必看
2022/02/21
9000
urllib与urllib2的学习总结(python2.7.X)
python爬虫----(1. 基本模块)
python爬虫,web spider。爬取网站获取网页数据,并进行分析提取。 基本模块使用的是 urllib,urllib2,re,等模块 (一)基本用法,例子 (1)进行基本GET请求,获取网页html #!coding=utf-8 import urllib import urllib2 url = 'http://www.baidu.com/' # 获取请求 request = urllib2.Request(url) try: # 根据request,得到返回r
lpe234
2020/07/27
6010
python中的urllib模块中的方法
urllib.request模块定义了一些打开URLs(一般是HTTP协议)复杂操作像是basic 和摘要模式认证,重定向,cookies等的方法和类。这个模块式模拟文件模块实现的,将本地的文件路径改为远程的url。因此函数返回的是类文件对象(file-like object)
py3study
2020/01/09
2.4K0
Python标准库学习之urllib
本系列以python3.4为基础 urllib是Python3的标准网络请求库。包含了网络数据请求,处理cookie,改变请求头和用户代理,重定向,认证等的函数。 urllib与urllib2?:py
py3study
2020/01/02
5500
Python:TTS语音合成技术,市场各大平台对比以及实现
前景提要:在线的实时合成TTS技术,巴拉巴拉... 此处省略3千字 市场的TTS平台:讯飞语音,百度智能语音开放平台,阿里云,腾讯云,思必驰,捷通华声(灵云)等。
Python疯子
2019/03/15
4.1K1
用python获取天气数据,并作定时播报
思路 1.调用和风天气的API,获取天气数据 2.用百度语音API,将天气数据合成语音 3.用树莓派每天早上定时播报天气(定时任务crontab + Python脚本 + mpg123播放器) Pyt
机器学习AI算法工程
2018/03/14
2.7K0
用python获取天气数据,并作定时播报
python语音智能对话聊天机器人,linux&&树莓派双平台兼容
项目简介:运用百度语音进行声音转中文的识别与合成,智能对话使用图灵机器人,录音则,linux端用pythonaudio 模块.树莓派端因为pythonaudio不兼容问题,因此用arecord进行录音.最终代码约150行.代码发布在github上.https://github.com/luyishisi/python_yuyinduihua
十四君
2019/11/28
6.3K0
Python 中的 urllib2 模块
    urlopen(url, data=None) -- Basic usage is the same as original     urllib.  pass the url and optionally data to post to an HTTP URL, and     get a file-like object back.  One difference is that you can also pass     a Request instance instead of URL.  Raises a URLError (subclass of     IOError); for HTTP errors, raises an HTTPError, which can also be     treated as a valid response.
py3study
2020/01/12
2.9K0
Python爬虫入门教程 56-100 python爬虫高级技术之验证码篇2-开放平台OCR技术
今天你要学习的验证码采用通过第三方AI平台开放的OCR接口实现,OCR文字识别技术目前已经比较成熟了,而且第三方比较多,今天采用的是百度的。
梦想橡皮擦
2019/04/18
1.3K0
Python爬虫入门教程 56-100 python爬虫高级技术之验证码篇2-开放平台OCR技术
Python开发---试用OCR文字识别API
AI如今发展迅速,各云厂商对通用的人脸识别,文字识别,语音识别和语音合成提供了接口。在日常中有些小场景还是可以用到这些通用AI接口使平台或软件锦上添花的。
MiaoGIS
2020/11/25
8.4K0
Python开发---试用OCR文字识别API
运维python进行(三) 用pytho
  zabbix是一款非常主流监控软件,以简单易用为人称道。zabbix拥有完善的api方便大家通过第三方调用,所以今天介绍一下如何利用python完成对zabbix api调用。
py3study
2020/01/09
6350
手把手搭建一个聊天机器人(二)
      这里,我们要去网上申请一个API,我们使用的是图灵聊天机器人。,网址是:http://www.tuling123.com/申请步骤就不说了,如果不会的话,我觉得,你这辈子只能和真人聊天了,把页面关了吧。
钱塘小甲子
2019/01/29
5380
手把手搭建一个聊天机器人(二)
相关推荐
Python实现文字转语音
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验