首页 > 编程语言 >手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能

时间:2023-04-23 11:33:32浏览次数:43  
标签:机器人 Python 手把手 小伙伴 图灵 url json res import


/1 前言/

在家闲着,做个小项目,基于Python,实现一个语聊小机器人,分享给大家。项目整体比较简单,官方文档介绍的非常详细,可快速上手。

/2 目标/

将图灵机器人放到桌面,实现工作助手/陪聊功能。

/3 涉及的库/

V1.0版本:requests、json

V2.0版本:requests、json、selenium(实现功能:如图灵返回结果为url,则自动打开网页)

/4 具体实现/

1、创建图灵机器人

图灵机器人的创建在网上有很多方法,因创建图灵机器人非常简单且与Python无关,此处不赘述。

注意:创建机器人后需要认证才能享受每天100条的免费回复。

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_Python

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_json_02

2、网上有很多API接入教程,如果想随便玩玩的话,用小编的代码就可以了,想实现更多,可以看看API文档。

3、认证成功后找到最关键的apiKey参数。

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_Python_03

4、开始写代码了--V1.0版本

首先引入需要的库

import requests
import json
from selenium import webdriver

url为官方文档中指定url

url = 'http://openapi.tuling123.com/openapi/api/v2'

添加请求头

headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'}

以下为输入内容,参考官方文档格式;

while True:
    aa = input('我:')
    data ={
        "perception": {
            "inputText": {
                "text": aa
            },
            "selfInfo": {
                "location": {
                "city": "济南"}
            }
        },
        "userInfo": {
            "apiKey": "写自己的APIKEY",
            "userId": "随便写几个数字和字母"
        }
    }

while true使聊天无限循环;

变量aa(随便起的)通过input()输入信息,会传入变量“text”中;

“city”填入你所在的城市,可修改为你所在的城市,可以详细到“street”;

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_json_04

userInfo为个人信息,apiKey填写你设置好的机器人的apiKey,userId实测可以随便写,比如‘123456’。

res = requests.post(url,headers=headers,data=json.dumps(data))

以上为解析数据,将字典格式的data变量转换为合法的json字符串传给post的data参数。

try:
        print('机器人:'+res.json()['results'][0]['values']['text'])
        if aa == '退出':
            break
    except:
        print('机器人:'+res.json()['results'][0]['values']['url'])

以上为输出数据。

如果返回值不是‘text’,则返回‘url’;

如果回复“退出”,则退出循环。

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_json_05

以上为全部代码。

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_Python_06

以上为V1.0效果图,可实现查天气、查列车班次、查快递、查酒店、查菜谱、绕口令等功能。

5、V2.0版本

首先安装selenium库,下载好谷歌浏览器。

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_图灵机器人_07

将chromedriver文件放到Python安装文件下,chromedriver文件可在文末进行获取下载方式。

引入相关库

import requests
import json
from selenium import webdriver

2.0相比1.0仅需添加最后三行代码,三行代码分别是获取url,打开浏览器,用浏览器打开该url,非常简单是不是!

except:
        print('机器人:' + res.json()['results'][0]['values']['url'])   
        url_1 =res.json()['results'][0]['values']['url']
        driver = webdriver.Chrome() 
        driver.get(url_1)

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_json_08

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_图灵机器人_09

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_图灵机器人_10

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_json_11

以上是效果展示,非常方便是不是!

最后打包成.exe文件(cmd运行 pyinstaller -F 代码源文件的绝对路径)放到桌面,或者分享给TA!

从此不管风雨,永远有可爱的图灵机器人陪着你(你的TA)!

/5 总结/

1、项目整体比较简单,官方文档介绍的非常详细,可快速上手;

2、Webdriver非常实用,很多反爬做的比较好的网站可以用此库;

3、官方还提供更多功能等着你去体验

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_json_12

实测微信个人号接入功能,通过微信调用图灵机器人更加方便,但是官方提供的两个三方程序一个收费一个需要挂机。

4、最后感谢图灵机器人,让我们普通人有免费渠道体验AI,体验科技带给人类生活的便捷!

手把手教你使用Python生成图灵智能小伙伴,实现工作助手/闲聊功能_Python_13

5、需要本文源码和chromedriver.exe的小伙伴。请在公众号后台回复“图灵”二字进行获取。原创不易,感谢您的支持!


标签:机器人,Python,手把手,小伙伴,图灵,url,json,res,import
From: https://blog.51cto.com/u_13389043/6216926

相关文章

  • 手把手教你使用Flask搭建ES搜索引擎(预备篇)
    今日鸡汤我死国生,我死犹荣,身虽死精神长生,成功成仁,实现大同。--赵博生/1前言/    Elasticsearch是一个开源的搜索引擎,建立在一个全文搜索引擎库ApacheLucene™基础之上。    那么如何实现 Elasticsearch和Python 的对接成为我们所关心的问题了(怎么什么都要和Pyt......
  • 一篇文章带你用Python网络爬虫实现网易云音乐歌词抓取
    前几天小编给大家分享了数据可视化分析,在文尾提及了网易云音乐歌词爬取,今天小编给大家分享网易云音乐歌词爬取方法。本文的总体思路如下:找到正确的URL,获取源码;利用bs4解析源码,获取歌曲名和歌曲ID;调用网易云歌曲API,获取歌词;将歌词写入文件,并存入本地。本文的目的是获取网易云......
  • 关于python爬虫解析的问题
    在进行Python爬虫解析时,需要注意以下事项:1、良好的网站使用协议:需要遵守网站的robots.txt文件,以确保你的爬虫程序不会将网站拦截下来。2、编码问题:需要正确设置HTTP头和解析器的编码,以确保爬虫程序能够正确地解析网站的信息。3、数据解析:需要适当地处理HTML文档中的标签,以便从......
  • python变量名规则&大小写敏感
    1.变量名由英文字母、下划线_或数字组成(不能包含空格、%、-、*、/、&、^等),并且第一个字符必须是英文字母或下划线。 2.变量名不能是Python关键字。(关键字指的是Python本身“已经在使用”的名字,Python已经占用了这些名字,所以我们不能用)常见的关键字:True False None(注意......
  • Python time 库常用函数
    time模块中时间表现的格式主要有三种:timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量struct_time时间元组,共有九个元素组。formattime格式化时间,已格式化的结构使时间更具可读性。包括自定义格式和固定格式。使用time库前先用import导......
  • python3-hex
    hex函数,参数可以是一个int整数或一个bytes类型元素,转为0x的十六进制字符串形式withopen(file='J:/新建文本文档.txt',mode='rb')asf:s=f.read()print(type(s),s)result=''foriins:result+=hex(i)print(result)<class'......
  • 基于 Python 开发的外星人入侵小游戏
    访问【WRITE-BUG数字空间】_[内附完整源码和文档]玩家通过鼠标控制飞船行动和射击,若能在敌人到达游戏界面底端之前消灭所有敌人,则游戏胜利,否则游戏失败。导语写了个低配版的外星人入侵小游戏来作为19年的第一更吧~让我们愉快地开始吧~开发工具**Python版本:**3.6.4相关模块:pygame......
  • Python 字符串占位符
    字符串不能修改使用+运算符拼接字符串,字符串与非字符串不能直接拼接。 弊端:如果变量过多,拼接起来很麻烦;字符串与非字符串之间无法进行拼接 name="Tom"info="%sis18yearsold"%name %s是占位符:%表示要占位s表示将引入的变量转为字符串放入该......
  • Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模拟进行股价预测|附代码数据
    全文下载链接:http://tecdat.cn/?p=20678最近我们被客户要求撰写关于GARCH的研究报告,包括一些图形和统计输出。在本文中,预测股价已经受到了投资者,政府,企业和学者广泛的关注。然而,数据的非线性和非平稳性使得开发预测模型成为一项复杂而具有挑战性的任务在本文中,我将解释如何将 ......
  • Python 环境搭建
    Python环境搭建https://www.python.org/downloads/      验证  ......