0.安装requests模块

Linux下执行

pip3 install requests

1.request简介

Reqest是Python的HTTP库,内部采用urillib3模块,但是用起来比urllib3更简洁,需要单独安装

2. request特性

-支持keep-alive的连接池

-支持通用的域名以及URL地址

-支持使用cookie

-支持使用类似游览器的SSL验证

-支持上传,下载

3.GET和POST

通过requests发送一个GET请求,需要在URL里请求的参数可通过params传递

r=requests.get(url="",params={},header={},cookie={})

与GET不同的是,POST请求新增加了一个可选参数data,需要通过POST请求传递的body里的数据可以通过data传递

r=requests.post(url="",data={},params={},header={},cookie={})

当访问一个URL时,我们经常需要发送一些查询字段,例如http://xxx.com/get?key=1,这里的key=1就是限定返回条件的参数键值对,当利用python的reqeusts去发送一个需要包含这些参数键值对时,可以将它们传给params。好处是安全和简洁

payload={'key1':'value1','key2':'value2'}

r=request.get('http://xxx.com/get,params=payload')

4.PUT,DELETE,HEAD以及OPTIONS

r=request.put('www.baidu.com/put',data={'key':'value'})

r=request.delete('www.baidu.com/delete')

r=request.head('www.baidu.com/get')

r=request.options('www.baidu.com/get')

5.设置头部和发送请求数据

用户也可以自己设定请求头,有时也需要将一些数据放在请求的body内,就需要对data传参了(仅POST,DELETE,PUT有效,GET请求无body)

url='https://api.gihub.com/some/endpoint'

headers={'Accepet':'application/json'}

payload={'key1':'value1','key2':'value2'}

r=request.post(url,headers,data=payload)

6.响应内容

读取服务器响应的内容

r=request.get('http://www.baidu.com')

查看内容:r.text r.content

查看编码:r.encoding

修改编码:r.encoding='utf8'

查看响应头:r.headers

内置json解码器:r.json()

实验--在钉钉中创建群聊机器人

1.注册钉钉账号(有跳过)

没有钉钉的话先注册

【官网】https://www.dingtalk.com/oasite/register_new.htm?source=1001&lwfrom=2017120202092064213045501#/

2.下载钉钉客户端

下载安装后打开到这个界面

3.配置钉钉机器人 

点击

选择机器人管理

选择自定义机器人webhook

输入名字,选择一个群发组

安全设置选ip地址,填你要执行脚本的主机ip(必须是公网ip)

创建之后会给你一个Webhook,复制即可

4.编写脚本

准备一台联网的linux系统主机

  1. [root@ localhost day12]# vim dingtalk.py
  2. import json
  3. import requests
  4. import sys
  5. def send_msg(url, reminders, msg):
  6. headers = {'Content-Type': 'application/json;charset=utf-8'}
  7. data = {
  8. "msgtype": "text", # 发送消息类型为文本
  9. "at": {
  10. "atMobiles": reminders,
  11. "isAtAll": False,                  # 不@所有人,如果要@所有人写True并且将上面atMobiles注释掉
  12. },
  13. "text": {
  14. "content": msg, # 消息正文
  15. }
  16. }
  17. r = requests.post(url, data=json.dumps(data), headers=headers)
  18. return r.text
  19. if __name__ == '__main__':
  20. msg = "这只是一个测试"
  21. reminders = ['15055667788']                           # 特殊提醒要查看的人,就是@某人一下
  22. url = 此处填写上面webhook的内容
  23. print(send_msg(url, reminders, msg))

5.执行脚本查看结果

[root@ localhost /]# python3 dingtalk.py

尝试一下@所有人和@单个人

python request模块 在钉钉中创建群聊机器人,一键发送消息,定时发送(详细步骤)相关推荐

  1. 记一次钉钉群聊机器人的开发

    文章目录 一.需求描述 二.开发思路 三.开发步骤 (一)阅读开发文档 (二)创建机器人 (三)了解消息格式 (四)传参并调用 (五)其他 四.总结 一.需求描述 为实现更好的沟通,现需要实现以自定义 ...

  2. 持续集成之消息推送:钉钉与企业微信的群聊机器人通用示例

    使用钉钉和企业微信的群聊机器人可以进行消息推送,这篇文章使用一个简单的脚本来说明其使用方式. 推送消息的方法 钉钉或者企业微信的群机器人都可提供消息推送的功能,相关的机器人的添加和消息推送的方法可以参 ...

  3. 【浙政钉】第四篇:浙政钉创建群聊、消息接入、发送

    背景 浙政钉上架应用可创建群聊,和用户单聊等. 版权 本文允许转载,转载请写上原文地址,谢谢!作者:曹震 目录 一.准备工作 二.浙政钉系列 三.接口开发 1.特别说明 1.1访问IP不在白名单中,r ...

  4. 钉钉机器人调研(群聊机器人)

    钉钉机器人调研(群聊机器人) package demo.test.ding;import com.dingtalk.api.DefaultDingTalkClient; import com.ding ...

  5. Python之 sklearn:sklearn.preprocessing中的StandardScaler函数的简介及使用方法之详细攻略

    Python之 sklearn:sklearn.preprocessing中的StandardScaler函数的简介及使用方法之详细攻略 目录 sklearn.preprocessing中的Stand ...

  6. Python工厂模式封装各类Webhook群聊机器人代码片段

    引言 企业存在给 特定群组 自动推送消息的需求,比如:监控报警推送.销售线索推送.运营内容推送等. 你可以在群聊中添加一个自定义机器人,通过服务端调用 webhook 地址,即可将外部系统的通知消息即 ...

  7. python写qq群机器人怎么弄_python打造自由DIY 群聊机器人

    本文首发于简书DIY 微信群聊机器人​www.jianshu.com 前言 这几天我的一个小伙伴问我能不能给 Ta 做一个配置灵活的微信群聊天机器人,之前了解过 itchat 库的使用,我就爽快的答应 ...

  8. 用WeRoBot和Python编写一个不使用网页版微信且能够回复消息微信群聊机器人

    要用 WeRoBot 和 Python 编写一个不使用网页版微信且能够回复消息的微信群聊机器人,您需要以下步骤: 安装 WeRoBot 和相关依赖: pipinstall werobot 创建一个 P ...

  9. 飞书群聊机器人每日自动推送语录及风景照片python版

    飞书群聊机器人自动推送消息 使用场景 推送机制 代码目录 代码详解 获取图片 获取有效token 上传图片并得到Image_Key 使用 完整代码 使用场景 最近使用飞书聊天,觉得蛮好用的,刚好这段时 ...

最新文章

  1. 实战之网马解密之shellcode篇
  2. linux 内核 出错-HP 方案
  3. 关于无法把程序(Adobe Fireworks CS5)添加到打开方式的解决办法
  4. 打造自己的数据访问层(二)
  5. SAP修改已经释放的请求
  6. 第二十二章 李逵为什么不可爱
  7. 夸奖对方代码写的好_怎样写好代码(三)
  8. 算法 - 排序稳定性总结
  9. 工业级光纤收发器的选用方法
  10. 大数据---单词释义
  11. 给 IDEA 换个酷炫的主题吧,这个有点哇塞啊!
  12. Hadoop 核心概念解析
  13. 基于javafx+sqlserver的仓库管理系统
  14. 关于网络安全域隔离问题 你真的了解吗?
  15. tomcat配置manger账户和host-manager账户的方法详细图解
  16. 记一次某公众号平台前端加密算法的解密
  17. 文本标注开源系统Doccano、Label Studio、BRAT比较
  18. 国际群发短信平台适用于哪些行业?
  19. ZigBee学习笔记——(三)ZigBee无线传感器网络通信标准
  20. HDU 5643 King's Game 打表

热门文章

  1. 2020 如何进入Vue 可视化项目管理器 UI界面
  2. SPOON资源库中查找表
  3. 时钟翻转事件_开发人员和时钟翻转
  4. ECOLOGY取消多语言
  5. 淘淘商城第113讲——生成订单
  6. 基站交直流配电多回路无线智能电量采集监控装置
  7. 趣图 + 讨论:现实开发中有哪些残酷的事情?
  8. 计算机模拟仿真试验有哪些案例,成功案例、申报指南……你想知道的虚拟仿真实验教学项目建设这都有...
  9. Lumerical学习2-使用脚本构建基础仿真结构
  10. FBX导入UE4模型报错:无法创建,多边形退化