【原】python 检查网站访问是否超时,并用钉钉机器人报警
2024-08-28 19:27:50
#!/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)
最新文章
- [连载]《C#通讯(串口和网络)框架的设计与实现》-4.设备驱动管理器的设计
- android 图片缓存
- Flex4的可视化显示对象
- Orchard Express Oracle v1.7.2 发布
- 自己写的一个关于Linq to Entity 动态查询的例子
- (转)js的call和apply
- asp.net网站中添加百度地图功能
- Linux基础--用户和组管理
- BZOJ3806: Neerc2011 Dictionary Size
- Spring源码入门——DefaultBeanNameGenerator解析
- QuaZip实现多文件打包
- SharePoint SiteCollection Administrator
- angular--bootstrap实例日期控件【datepicker】
- (转载)关于#pragma pack(push,1)和#pragma pack(1)
- 【我与一道水题的抗争之路】 哈理工2323 Emirp(反素数)
- 201521123096《Java程序设计》第一周学习总结
- BLO(bzoj1123)
- Javascript小问题
- pom.xml的第一行报错
- 一道有意思的多线程面试题 C# 代码实现