/1 前言/

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

/2 目标/

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

/3 涉及的库/

V1.0版本:requests、json

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

/4 具体实现/

1、创建图灵机器人

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

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

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

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

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

首先引入需要的库

import requestsimport jsonfrom 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”;

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’;

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

以上为全部代码。

image

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

5、V2.0版本

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

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

引入相关库

import requestsimport jsonfrom 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)

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

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

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

/5 总结/

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

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

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

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

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

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

6、需要学习更多关于Python网络爬虫的知识,可以前往网站:http://pdcfighting.com/

python requests返回值为200 但是text无内容_手把手教你使用Python生成图灵智能小伙伴,实现工作助手闲聊功能相关推荐

  1. python requests返回值为200 但是text无内容_接口测试入门神器 - Requests

    起源 众所周知,自动化测试是软件测试爱好者毕生探索的课题.我认为,只要把 接口测试 做好,你的自动化测试就至少成功了一半. 应部分热情读者要求,今天泰斯特跟大家一起了解 python 接口测试库- R ...

  2. python requests返回值为200 但是text无内容_爬取高清无版权美图

    01 前言 做公众号,总是会需要使用一些图片做封面或背景.我的公众号的图片有两种来源:一是通过创可贴自己动手修改下就可以用了,还一种就是在网上下载图片. 那如何下载高清并且可以供使用(无版权)的图片了 ...

  3. python抓取网页数据并截图_手把手教你使用python抓取并存储网页数据!

    作者:刘早起 来源:早起Python 爬虫是Python的一个重要的应用,使用Python爬虫我们可以轻松的从互联网中抓取我们想要的数据,本文将基于爬取B站视频热搜榜单数据并存储为例,详细介绍Pyth ...

  4. 怎么用python自制计算公式_手把手教你用python制作简易计算器,能够记录你使用的情况...

    话不多说,首先先看效果图,它能够记录你在使用过程中的历史,方便你查看是否有错: 接下来就仔细分析一下是如何制作的: 简易计算器 第一步:导入资源库 在过程中使用到了tkinter这个资源库,win+R ...

  5. python爬虫爬取房源_手把手教你用Python网络爬虫爬取新房数据

    项目背景 大家好,我是J哥. 新房数据,对于房地产置业者来说是买房的重要参考依据,对于房地产开发商来说,也是分析竞争对手项目的绝佳途径,对于房地产代理来说,是踩盘前的重要准备. 今天J哥以「惠民之家」 ...

  6. python网页爬虫循环获取_手把手教你用 Python 搞定网页爬虫

    原标题:手把手教你用 Python 搞定网页爬虫 编译:欧剃 作为数据科学家的第一个任务,就是做网页爬取.那时候,我对使用代码从网站上获取数据这项技术完全一无所知,它偏偏又是最有逻辑性并且最容易获得的 ...

  7. python 靶心_手把手教你使用Python实战反欺诈模型|原理+代码

    原标题:手把手教你使用Python实战反欺诈模型|原理+代码 作者 | 萝卜 来源 | 早起Python(ID: zaoqi-python) 本文将基于不平衡数据,使用Python进行 反欺诈模型数据 ...

  8. 用python画皇冠_手把手教你用 Python 绘制酷炫的桑基图!

    原标题:手把手教你用 Python 绘制酷炫的桑基图! 作者 | 周志鹏 责编 | 郭 芮 最近,不止一次收到小伙伴的截图追问: "这个图叫什么???" "这个图真好看! ...

  9. python数据预测代码_手把手教你用Python玩转时序数据,从采样、预测到聚类丨代码...

    原标题:手把手教你用Python玩转时序数据,从采样.预测到聚类丨代码 原作 Arnaud Zinflou 郭一璞 编译 时序数据,也就是时间序列的数据. 像股票价格.每日天气.体重变化这一类,都是时 ...

最新文章

  1. JAVA自学笔记07
  2. SpringBoot+Mybatis 框架之 @Select注解方式搭建
  3. Oracle查询表结构的一些相关语句
  4. help.hybris.com和help.sap.com网站的搜索实现
  5. WebSocket笔记(一) 初步认识
  6. 微信开放平台公众号第三方平台开发 教程一 平台介绍
  7. 触发更新机制_王者荣耀1.14更新:11名英雄调整,韩信加强,鲁班大师重做
  8. 如何实现一个优秀的散列表!
  9. 找个轻量级的Log库还挺难
  10. java 去除jsonarray里面jsonarray的重复和合并数据
  11. java mongodb 语句,MongoDB语句
  12. C++ 优先级队列(priority_queue)
  13. PAT (Basic Level) Practice1026 程序运行时间
  14. 从bagging到dropout(deep learning笔记Ian)
  15. u检验中的查u界值表_统计学中,知道u值,如何确定P值,是通过查表吗
  16. SQL server 字符串 转 日期格式
  17. tplink 2.4g弱信号剔除_路由器信号分为2.4G和5G,这两种信号有什么区别
  18. MIT6.S081 2021
  19. IP-guard苹果加密软件|苹果系统加密|Mac文档加密软件
  20. ITASCA FLAC2D.v5.0 1CD

热门文章

  1. Hive数据据类型 DDL DML
  2. 安卓手机电子书阅读器的使用体验及对比
  3. 你为什么要学习WordPress?
  4. 从零开始学Pytorch(十二)之凸优化
  5. Matrix Factorization: A Simple Tutorial and Implementation in Python
  6. Python列表:list
  7. 无损链接分解_一点都不能少!伯克利研究人员提出深度学习锻造无损数据压缩新方法...
  8. linux安装rabbitmq过程,Linux安装RabbitMQ
  9. 禅道的安装与简单使用
  10. vuex状态持久化_Vuex持久化存储之vuex-persist