#!/usr/bin/env python

import requests
import json
import logging webhook="上面创建钉钉机器人的webhook地址"
logfile='C:\\Users\\lyj\\Desktop\\lyj.txt' urls = [
'http://www.baidu.com',
'http://www.sohu.com',
'http://www.sina.com',
'http://www.google.com.hk'
] def check_url_state(url,timeout=5):
try:
r = requests.get(url, timeout=timeout)
return r.status_code
except requests.exceptions.RequestException as e:
#print(e)
logging.error(e)
return "timeout" def send_ding(text):
json_data={
"msgtype": "text",
"text": {
"content": text
}
}
print(json_data)
headers = {'Content-Type': 'application/json'}
#x=requests.post(url=webhook,data=json.dumps(json_data),headers=headers)
logging.info(json_data) if __name__ == '__main__': logging.basicConfig(level=logging.INFO,
format='%(asctime)s - [%(levelname)s] - %(filename)s - %(message)s',
#datefmt='%Y-%m-%d %H:%M:%S %p', # 时间
filename=logfile,
filemode='a')
for url in urls:
if check_url_state(url,1) == "timeout":
print("报警:",url)
content = '报警网站:{}'.format(url)
send_ding(content)
logging.warning(content)
else:
print("正常:",url)
logging.info('正常: %s',url)

最新文章

  1. [连载]《C#通讯(串口和网络)框架的设计与实现》-4.设备驱动管理器的设计
  2. android 图片缓存
  3. Flex4的可视化显示对象
  4. Orchard Express Oracle v1.7.2 发布
  5. 自己写的一个关于Linq to Entity 动态查询的例子
  6. (转)js的call和apply
  7. asp.net网站中添加百度地图功能
  8. Linux基础--用户和组管理
  9. BZOJ3806: Neerc2011 Dictionary Size
  10. Spring源码入门——DefaultBeanNameGenerator解析
  11. QuaZip实现多文件打包
  12. SharePoint SiteCollection Administrator
  13. angular--bootstrap实例日期控件【datepicker】
  14. (转载)关于#pragma pack(push,1)和#pragma pack(1)
  15. 【我与一道水题的抗争之路】 哈理工2323 Emirp(反素数)
  16. 201521123096《Java程序设计》第一周学习总结
  17. BLO(bzoj1123)
  18. Javascript小问题
  19. pom.xml的第一行报错
  20. 一道有意思的多线程面试题 C# 代码实现

热门文章

  1. K8s预选策略和优选函数简介
  2. vb.net 获取文件的版本号
  3. Laravel自动备份到阿里云OSS
  4. 依赖注入(DI)与控制反转(IOC)基础知识
  5. 利用ffmpeg获取视频帧
  6. PatchMatch小详解
  7. javascript的立即执行函数
  8. Git flow 工作流与规范
  9. 解决element-ui表格表头内容太长时的换行问题
  10. 【转帖】威盛x86 AI处理器架构、性能公布:媲美Intel 32核心