itchat与微软小冰的碰撞!--微软小冰接入itchat实现微信自动回复

微软小冰接入itchat实现微信自动回复

  • 本文简介
    • 先上效果图!
    • 一、集成微软小冰制作聊天机器人
    • 原理
    • 代码
      • 监听好友信息
      • 监听小冰信息
    • 二、定时发送消息推送与自动回复同时实现
    • 原理
    • 代码
    • 完整代码
    • 加点花的代码
    • 结语

本文简介

最近研究了一下基于python实现的itchat模块,这是一个基于微信网页版接口的微信开源库,通过itchat模块,可以很简单的实现微信的自动回复,在本文之前,网络上也已经有了非常多优秀详实的介绍教程,在仔细学习之后,我也决定写一篇,作为对这个 好玩的模块的学习记录。
通过本文,你可以实现:一、集成微软小冰制作聊天机器人,二、定时发送消息推送与自动回复同时实现

先上效果图!

在这里插入图片描述在这里插入图片描述

一、集成微软小冰制作聊天机器人

原理

获取用户发送的信息并将其转发给微软小冰,监听小冰的回复,再将其转发给用户。(这是一种全新的思路,没有使用图灵或者小i的api接口,第一是因为图灵的认证非常麻烦,第二是因为其智能程度远不及小冰。)

代码

监听好友信息

@itchat.msg_register(itchat.content.TEXT, isFriendChat=True)#itchat.content.TEXT表明只监听文字信息, isFriendChat=True表明只监听好友信息
def reply_msg(msg):print(msg['User']['NickName'])#msg['User']['NickName']为好友的微信昵称global people#此处定义的全局变量非常关键,它是将好友的信息传回小冰的关键people=msg['FromUserName']#将全局变量定义为好友的ID,注意这个ID不是昵称print(msg['Content'])#将好友发来的信息打印出来mps = itchat.search_mps(name='小冰')#搜索小冰if len(mps) > 0:print(mps[0]['NickName'])itchat.send_msg(msg['Content'], toUserName=mps[0]['UserName'])#给小冰发消息

监听小冰信息

@itchat.msg_register(itchat.content.TEXT, isMpChat=True)#isMpChat=True表明只监听公众号信息,注意小冰是个公众号
def reply_msg(msg)print(msg['Content'])#将小冰的消息显示出来print(people)itchat.send_msg(msg['Content'], people)#将这个消息发送给原来的那个人

二、定时发送消息推送与自动回复同时实现

原理

多进程的实现,用keeprun进程来保持自动回复,用keepsend来进行定时发送。其中keepsend通过匹配当时时间是否在一个时间段内,之前尝试匹配固定时间点没有成功,可能是网络的原因。在自动回复方面为了实现订阅效果,还使用了sqlite数据库来记录好友的订阅请求。

代码

def AddUser(user):cx = sqlite3.connect("G:/wx.db")cu=cx.cursor()rr="insert into user( name) values ("+"'"+ user+"'"+")"cu.execute(rr)print(rr)cx.commit()cx.close()def keeprun():itchat.run()def keepsend():d_time = datetime.datetime.strptime(str(datetime.datetime.now().date())+'7:00:00', '%Y-%m-%d%H:%M:%S')d_time1 =  datetime.datetime.strptime(str(datetime.datetime.now().date())+'7:00:10', '%Y-%m-%d%H:%M:%S')while(1==1):    nowTime = datetime.datetime.now()if(nowTime > d_time and nowTime<d_time1):send_msg()#需要定时发送的信息            time.sleep(10)#睡眠的原因是为了不造成多次发送threads = []
t1 = threading.Thread(target=keeprun)
threads.append(t1)
t2 = threading.Thread(target=keepsend)
threads.append(t2)

完整代码


```python
import itchat
from itchat.content import *
import time
import threading@itchat.msg_register(itchat.content.TEXT, isMpChat=True)
def reply_msg(msg):print(msg['Content'])  # 将小冰的消息显示出来print(people)itchat.send_msg(msg['Content'], people)  # 将这个消息发送给原来的那个人@itchat.msg_register(itchat.content.TEXT, isFriendChat=True)
def reply_msg(msg):print(msg['User']['NickName'])global peoplepeople = msg['FromUserName']print(msg['Content'])mps = itchat.search_mps(name='小冰')if len(mps) > 0:print(mps[0]['NickName'])itchat.send_msg(msg['Content'], toUserName=mps[0]['UserName'])  # 给小冰发消息if __name__ == '__main__':itchat.auto_login(hotReload=True, enableCmdQR=True)itchat.run()

加点花的代码


import itchat
import sqlite3   
from apscheduler.schedulers.blocking import BlockingScheduler
import time
import datetime
from itchat.content import *
import time
import threading
import urllib3, json, urllib
import re,io
import jieba
from wordcloud import WordCloud 
from wordcloud import ImageColorGenerator
import imageio 
from scipy.misc import imread, imshow, imsave
import scipy
import matplotlib.pyplot as plt
import requests as rq
@itchat.msg_register(itchat.content.TEXT, isMpChat=True)
def reply_msg(msg):if msg['Content'] == u'今日新闻':itchat.send_msg(msg['User']['NickName'] + "您好:您的今日新闻已订阅成功,系统将在每天7点钟为您推送前一日热点新闻,如需退订,请回复TD!", msg['FromUserName'])print(msg['User']['NickName'])AddUser(msg['User']['NickName'])if msg['Content'] == u'今日黄历':itchat.send_msg(msg['User']['NickName'] + get_huangli(), msg['FromUserName'])print(msg['User']['NickName'])AddUser(msg['User']['NickName'])if msg['Content'] == u'今日头条':itchat.send_msg(msg['User']['NickName'] +"今日头条:"+ get_news(), msg['FromUserName'])print(msg['User']['NickName'])AddUser(msg['User']['NickName'])if msg['Content'] == u'词云':my_friends()my_friends_sex(my_friends())my_friends_style(my_friends())drow_sex(my_friends_sex(my_friends()))wordart()itchat.send_image('G://2.png', msg['FromUserName'])else:print(msg['Content'])#将小冰的消息显示出来print(people)itchat.send_msg(msg['Content'], people)#将这个消息发送给原来的那个人@itchat.msg_register(itchat.content.TEXT, isFriendChat=True)
def reply_msg(msg):if msg['Content'] == u'今日新闻':itchat.send_msg(msg['User']['NickName'] + "您好:您的今日新闻已订阅成功,系统将在每天7点钟为您推送前一日热点新闻,如需退订,请回复TD!", msg['FromUserName'])print(msg['User']['NickName'])AddUser(msg['User']['NickName'])if msg['Content'] == u'今日黄历':itchat.send_msg(msg['User']['NickName'] + get_huangli(), msg['FromUserName'])print(msg['User']['NickName'])AddUser(msg['User']['NickName'])if msg['Content'] == u'今日头条':itchat.send_msg(msg['User']['NickName'] +"今日头条:"+ get_news(), msg['FromUserName'])print(msg['User']['NickName'])AddUser(msg['User']['NickName'])if msg['Content'] == u'词云':my_friends()my_friends_sex(my_friends())my_friends_style(my_friends())drow_sex(my_friends_sex(my_friends()))wordart()#itchat.send_msg("我是一个机器人!", msg['FromUserName'])#itchat.send_image("G://词云.png", msg['FromUserName'])itchat.send_image('G://2.png', msg['FromUserName'])else:print(msg['User']['NickName'])global peoplepeople=msg['FromUserName']print(msg['Content'])mps = itchat.search_mps(name='小冰')if len(mps) > 0:print(mps[0]['NickName'])itchat.send_msg(msg['Content'], toUserName=mps[0]['UserName'])#给小冰发消息def AddUser(user):cx = sqlite3.connect("G:/wx.db")cu=cx.cursor()rr="insert into user( name) values ("+"'"+ user+"'"+")"cu.execute(rr)print(rr)cx.commit()cx.close()def get_iciba_everyday():#金山词霸每日一句url = 'http://open.iciba.com/dsapi/'r = requests.get(url)return json.loads(r.text)def send_msg():#定时发送消息# 1、获取新闻data = {}data["appkey"] = "自己申请api"data["channel"] = "头条"  #新闻频道(头条,财经,体育,娱乐,军事,教育,科技,NBA,股票,星座,女性,健康,育儿)url_values = urllib.parse.urlencode(data)url = "https://api.jisuapi.com/news/get" + "?" + url_valuesrequest = urllib.request.Request(url)result = urllib.request.urlopen(request)jsonarr = json.loads(result.read())result = jsonarr["result"] i=0con=""con2=""con3=""con4=""for val in result["list"]:content1= ''.join(val['title'])str1=content1con=con+"\n"+str1#con是新闻url = 'http://open.iciba.com/dsapi/'r = urllib.request.Request(url)result = urllib.request.urlopen(r)content = json.loads(result.read())con2= '\n每日一句:\n'+content['content'] +'\n'+content['note']con3=get_huangli()con="今日关注\n"+con+"\n"+con2+"\n"+con3cx = sqlite3.connect("G:/wx.db")cu=cx.cursor()cu = cx.execute("select name from user")for (row,) in cu:   #循环输出结果print(row)#print(row.split(' ', 1 )) # 以空格为分隔符,分隔成两个user_info = itchat.search_friends(name=row)if len(user_info) > 0:user_name = user_info[0]['UserName']itchat.send_msg(con, toUserName=user_name)def get_huangli():#黄历接口data = {}data["appkey"] = "自己申请api"data["year"] =datetime.datetime.now().strftime('%Y')#现在 data["month"] = datetime.datetime.now().strftime('%m')#现在data["day"] =datetime.datetime.now().strftime('%d')#现在 url_values = urllib.parse.urlencode(data)url = "https://api.jisuapi.com/huangli/date" + "?" + url_valuesrequest = urllib.request.Request(url)    result = urllib.request.urlopen(request)jsonarr = json.loads(result.read())    result = jsonarr["result"]content1='天干地支:' + ','.join(result['suici'])content2='今日应当注意的生肖:' + result["chong"]content3='宜:' + ','.join(result['yi'])content4='忌:' + ','.join(result['ji'])return '今日黄历:'+content1+'\n'+content2+'\n'+content3+'\n'+content4
def get_news():# 1、获取新闻 data = {}data["appkey"] = "自己申请api"data["channel"] = "头条"  #新闻频道(头条,财经,体育,娱乐,军事,教育,科技,NBA,股票,星座,女性,健康,育儿)url_values = urllib.parse.urlencode(data)url = "https://api.jisuapi.com/news/get" + "?" + url_valuesrequest = urllib.request.Request(url)result = urllib.request.urlopen(request)jsonarr = json.loads(result.read()) result = jsonarr["result"] #print(result["channel"],result["num"])i=0con=""for val in result["list"]:content1= ''.join(val['title'])str1=content1con=con+"\n"+str1       #str[i]='\n'+'今日关注:'+content1+'\n'#time.sleep(3)    return(con)   def get_bots(message):#小i机器人data = {}data["appkey"] = "自己申请api"data["question"] =  message url_values = urllib.parse.urlencode(data)url = "https://api.jisuapi.com/iqa/query" + "?" + url_values request = urllib.request.Request(url)result = urllib.request.urlopen(request)jsonarr = json.loads(result.read())  result = jsonarr["result"]print(result["type"],result["content"])return(str(result["content"]))#return(result)#for row in result["relquestion"]:#print(row)#return(row)def get_bot2(message):#图灵机器人print("得到消息")info = message# 图灵API接口api_url = 'http://openapi.tuling123.com/openapi/api/v2'# 接口请求数据data = {"reqType": 0,"perception": {"inputText": {"text": str(info)}},"userInfo": {"apiKey": "自己申请api","userId": "123"}}headers = {'Content-Type': 'application/json','Host': 'openapi.tuling123.com','User-Agent': 'Mozilla/5.0 (Wi`ndows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3486.0 ''Safari/537.36 '}# 请求接口result = rq.post(api_url, headers=headers, json=data).json()print(result['results'][0]['values']['text'])return(str(result['results'][0]['values']['text']))#####用于得到好友的状态签名词云及好友男女分布
def my_friends():#二维码登陆    #获取好友信息friends = itchat.get_friends(update=True)return friends
def my_friends_sex(friends):   #创建一个字典用于存放好友性别信息friends_sex = dict()#定义好友性别信息字典的key,分别为男性,女性,其他male    =  "男性"female  =  "女性"other   =  "其他"#遍历列表中每一个好友的信息,     for i in friends[1:]:sex = i["Sex"]if sex == 1:#字典操作,找到key并为其的值加1friends_sex[male] = friends_sex.get(male,0) + 1elif sex == 2:friends_sex[female] = friends_sex.get(female,0) + 1elif sex == 0 :friends_sex[other] = friends_sex.get(other,0) + 1#打印好友性别信息的字典#print (friends_sex)#好友总数,从第二个开始是因为第一个好友是自己totle = len(friends[1:])proportion = [float(friends_sex[male])/totle*100,float(friends_sex[female])/totle*100,float(friends_sex[other])/totle*100]print ("男性好友:%.2f%% " % (proportion[0])     +'\n' +"女性好友:%.2f%% " % (proportion[1])   +'\n' +"其他:%.2f%% "  % (proportion[2]))return friends_sex
def my_friends_style(friends):#创建列表用于存放个性签名style = []for i in range(len(friends)):#每一个好友的信息存放在列表中的字典里,此处获取到i = friends[i]#得到每个字典的个性签名的key,即Signature#strip去除字符串首位的空格,replace去掉英文Signature = i['Signature'].strip().replace('span','').replace('class','').replace('emoji','')#通过正则表达式将签名中的特殊符号去掉,re.sub则相当于字符串操作中的replacerep = re.compile('1f\d+\w*|[<>/=]')Signature=rep.sub('',Signature)#放入列表style.append(Signature)#join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。#此处将所有签名去除特殊符号和英文之后,拼接在一起text = ''.join(style)#将输出保存到文件,并用结巴来分词with io.open('G://text.txt','a',encoding = 'utf-8') as f:wordlist = jieba.cut(text,cut_all=False)word_space_split = ' '.join(wordlist)f.write(word_space_split)def drow_sex(friends_sex):#获取饼状图的标签和大小labels = []sizes = []for key in friends_sex:labels.append(key)sizes.append(friends_sex[key])#每块图的颜色,数量不足时会循环使用colors = ['red', 'yellow', 'blue']#每一块离中心的距离explode = (0.1,0,0)#autopct='%1.2f%%'百分数保留两位小数点;shadow=True,加阴影使图像更立体#startangle起始角度,默认为0°,一般设置为90比较好看plt.pie(sizes,explode=explode,labels=labels,colors=colors,autopct='%1.2f%%',shadow=True,startangle=90)#设置图像的xy轴一致plt.axis('equal')#显示颜色和标签对应关系plt.legend()#添加title,中文有乱码是个坑,不过我找到填平的办法了plt.suptitle("微信好友性别统计图")#保存到本地,因为show之后会创建空白图层,所以必须在show之前保存plt.savefig('F:\好友性别饼状图.png')plt.show()
def wordart():back_color =imread('G://1.png')wc = WordCloud(background_color='white',    #背景色max_words=1000,mask=back_color,     #以该参数值绘制词云max_font_size=100,                   font_path="C:/Windows/Fonts//STFANGSO.ttf", #设置字体类型,主要为了解决中文乱码问题random_state=42, #为每一词返回一个PIL颜色)#打开词源文件text = open("G://text.txt",encoding='utf-8').read()#wc.generate(text)#基于彩色图像生成相应颜色image_colosr = ImageColorGenerator(back_color)#显示图片plt.imshow(wc)#关闭坐标轴plt.axis("off")#保存图片wc.to_file("G://2.png")def keeprun():itchat.run()def keepsend():d_time = datetime.datetime.strptime(str(datetime.datetime.now().date())+'7:00:00', '%Y-%m-%d%H:%M:%S')d_time1 =  datetime.datetime.strptime(str(datetime.datetime.now().date())+'7:00:10', '%Y-%m-%d%H:%M:%S')while(1==1):       nowTime = datetime.datetime.now()if(nowTime > d_time and nowTime<d_time1):send_msg()            time.sleep(10)
threads = []
t1 = threading.Thread(target=keeprun)
threads.append(t1)
t2 = threading.Thread(target=keepsend)
threads.append(t2)
if __name__ == '__main__':    itchat.auto_login(hotReload=True, enableCmdQR=True)    for t in threads:t.setDaemon(True)t.start()

结语

本文参考了
https://blog.csdn.net/coder_pig/article/details/81357810,
https://blog.csdn.net/woniu_001/article/details/80558514
在此表示感谢。

感谢您花时间浏览本文,本文是我的第一篇作品,必然有许多错误之处,也希望您可以将发现的问题反馈给我!
突然发现itchat已经不让使用了,遗憾。在寻找其他可以替代的产品。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/21527.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ChatGPT 最新知识大全:工作原理,ChatGPT 是如何训练的,局限性是什么,开源 ChatGPT 替代品有哪些?

我们今天谈论的应用程序在发布后的 5 天内就突破了 100 万用户,并在 2023 年 2 月之前获得了 1 亿用户,创下了增长最快的平台记录。它在 2 月达到了 10 亿次访问,在 2023 年 3 月达到了 16 亿次访问。相比之下,Facebook需要 10 个月,Spotify需要 5 个月,Instagram需要 2 …

昇思MindSpore AI框架在知名度与使用率市场份额上处于第一梯队

2023年2月6日&#xff0c;行业研究机构Omdia&#xff08;Informa tech集团旗下国际信息与通信技术研究机构&#xff09;发布了《中国人工智能框架市场调研报告》&#xff0c;深入分析了中国人工智能框架市场的竞争格局&#xff0c;产业现状与创新趋势。Omdia通过调研发现&#…

当ChatGPT杀入学术出版领域,有人开始围堵,有人悄悄地打开大门

导读 最近&#xff0c;智能聊天机器人ChatGPT火到了天际。 它能够通过学习和理解人类的语言来进行对话&#xff0c;还能根据聊天内容的上下文进行互动&#xff0c;像人一样来沟通交流&#xff0c;甚至能完成撰写邮件、视频脚本、文案、翻译、代码等任务。 除此之外&#xff…

Sorry, you have been blocked !vultr 又被 openai 屏蔽了,只能换个 vps 了

最近有段时间没登陆 chatGPT&#xff0c;最近听说 chatGPT 出插件功能了&#xff0c;于是就想体验一下。 打开网站发现 有特么被屏蔽了。 不慌&#xff0c;压压惊&#xff0c;先看看是屏蔽了 IP 还是屏蔽了账号。 Google 一下&#xff0c;一个靠谱的答案是&#xff1a; open…

AI新时代拐点:人工智能当红炸子鸡Chatgpt

​当下&#xff0c;AI聊天程序ChatGPT风靡全网&#xff0c;因为它能够给出更合理且充满人情味的答案&#xff0c;引发了广泛关注。那么&#xff0c;ChatGPT究竟能做什么&#xff1f;它的背后又有什么样的故事呢&#xff1f;让我们一起来探索一下吧&#xff01; 在我们深入了解C…

马斯克启动TruthGPT/ 星舰首飞再延期至本周四/ Adobe AI工具重磅更新...今日更多新鲜事在此...

日报君 发自 凹非寺量子位 | 公众号 QbitAI 大家好&#xff0c;今天是4月18日星期二&#xff0c;昨天&#xff0c;马斯克的星舰又双叒叕咕咕咕了~ 今天科技圈有哪些新鲜事儿&#xff0c;和日报君一起来看看~ Space X星舰发射再度推迟&#xff0c;周边产品已开始预售 昨日&#…

edge-tts微软文本转语音库,来听听这些语音是否很熟悉?

上期图文教程,我们分享了Azure机器学习的文本转语音的账号申请与API申请的详细步骤,也介绍了基于python3实现Azure机器学习文本转语音功能的代码实现过程,虽然我们可以使用Azure账号免费提供一年的试用期,但是毕竟是要付费的,我们的API也无法长期使用,好在微软发布了edge…

韩语学习笔记

微软韩语键盘顺序&#xff1a; ㅂ ㅈ ㄷ ㄱ ㅅ ㅛ ㅕ ㅑ ㅐ ㅔ ㅁ ㄴ ㅇ ㄹ ㅎ ㅗ ㅓ ㅏ ㅣ ㅋ ㅌ ㅊ ㅍ ㅠ ㅜ ㅡ 注&#xff1a;Shift Q ㅃ 천 리 길 도 첫 걸 음 으 로 시 작 된 다. 千里之行&#xff0c;始于足下。 고통 이 없으면 얻는 것도 …

无需完美,文心一言已然自证百度

ChatGPT以火箭般的速度爆红&#xff0c;吹皱了中国科技圈和创投界的一池春水&#xff0c;引得无数人蠢蠢欲动。互联网大佬自掏腰包、带资建组&#xff0c;科技大厂摩拳擦掌、争先恐后&#xff0c;创业公司也不遑多让&#xff0c;甚至与AI不搭边的个别企业也借势营销&#xff0c…

Hugging face预训练模型下载和使用

Huggingface Huggingface是一家公司&#xff0c;在Google发布BERT模型不久之后&#xff0c;这家公司推出了BERT的pytorch实现&#xff0c;形成一个开源库pytorch-pretrained-bert。后来这家公司又实现了其他的预训练模型&#xff0c;如GPT、GPT2、ToBERTa、T5等。此时&#xff…

零门槛复现ChatGPT:预训练模型数据集直接用,在线可体验

明敏 发自 凹非寺量子位 | 公众号 QbitAI 这边ChatGPT、GPT-4等AI大模型和应用打得火热&#xff1b; 另一边“平替”开源复现方案也加紧更新迭代。 这不&#xff0c;“首个开源ChatGPT低成本复现流程”就来了波大更新&#xff01; 现在&#xff0c;仅需不到百亿参数&#xff0c…

结合具体场景举例说明chatgpt预训练模型中Tokenization的原理

假设我们有一个场景&#xff0c;Alice想向Chatbot询问一部电影的推荐。她发送了一条消息&#xff1a;“你好&#xff0c;能给我推荐一部好看的电影吗&#xff1f;” 在这个场景中&#xff0c;Chatbot使用了ChatGPT预训练模型。首先&#xff0c;Chatbot需要对Alice的消息进行Tok…

举例说明chatgpt中生成式预训练模式中的预训练过程以及生成结果过程

生成式预训练模式&#xff08;GPT&#xff09;在自然语言处理任务中具有重要地位&#xff0c;它通过大量文本数据进行预训练&#xff0c;学习到一个通用的语言模型。然后通过微调&#xff0c;让模型适应特定任务。在这个过程中&#xff0c;GPT模型首先进行预训练&#xff0c;接…

魅魔php影视系统,魅魔全新且强大的视频电影程序(MacCMS PHP) 6.1 20120511

魅魔PHP影视系统&#xff0c;完全开源、强劲功能、卓越性能、安全健壮。超级易用、模板众多、插件齐全、资源丰富。构架稳健&#xff0c;实现平滑升级。 魅魔PHP影视系统 6.1 20120511 更新记录&#xff1a; 1&#xff0c;功能的累计性更新。 魅魔MacCMS视频电影程序是一套采用…

魅魔php影视系统,魅魔Maccms电影程序PHP

魅魔Maccms视频电影程序是一套采用ASPMSSQL/ACCESS (PHPMYSQL)环境下运行的完善而强大的视频电影系统。 经过近多年的开发经验和技术积累&#xff0c;魅魔Maccms视频电影程序已逐步走向成熟&#xff0c;在易用性和功能上已经成为同行中的佼佼者。 程序体积小->优化程序代码&…

寥寥几行代码,却改变了世界!

有那么一些代码片段&#xff0c;虽然只有寥寥几行&#xff0c;却能够给全世界带来巨大的影响。 链接&#xff1a;https://betterprogramming.pub/tiny-snippets-of-code-that-changed-the-world-fda104afc0d0 声明&#xff1a;本文为 CSDN 翻译&#xff0c;未经允许禁止转载。 …

chatgpt赋能python:Python绘制函数曲线:创造出令人惊叹的图形

Python绘制函数曲线&#xff1a;创造出令人惊叹的图形 随着越来越多的人开始关注数据可视化&#xff0c;Python成为了一种被广泛使用的工具&#xff0c;用于创建各种图形&#xff0c;包括函数曲线。Python图形库的灵活性和适用性使得它成为数据科学和工程领域中最受欢迎的编程…

chatgpt赋能python:Python手写体:Python程序员的最爱

Python手写体&#xff1a;Python程序员的最爱 介绍 Python手写体是指通过艺术化的方式将Python编程语言的代码转化成手写体风格的艺术作品。Python手写体的发展源于Python编程语言逐渐成为全球最受欢迎的编程语言之一。Python程序员喜欢用它来构建Web应用程序、数据分析、机器…

最新免费版 Office 全家桶Copilot,Gamma+MindShow 两大ChatGPT AI创意工具GPT-4神器助力高效智能制作 PPT,一键生成,与AI智能对话修改PPT(免安装)

目录 前言ChatGPT MindShow1. 使用ChatGPT工具生成PPT内容2. 使用MindShow工具一键智能制作PPTMindShow简介使用网页版制作pdf转ppt GAMMA AI神器GAMMA.app介绍注册 decks操作Guided 指导Text to deck 文本到PPTpdf转ppt协同操作其它 参考资料其它资料下载 前言 2023年3月&am…

【Twitter 舆论分析】Twitter 实时推文爬虫

0x00 前言 继续探索Twitter API的使用&#xff0c;这次获取一下Twitter的实时推文。 0x01 具体步骤 1、sample-steam 样本流 这是Twitter提供的代码&#xff0c;比较简单&#xff0c;只需要更改一下"bearer_token"即可使用&#xff0c;相对获得的数据单一&#x…