python - 请求离线网站时如何修复此 Python python 脚本不崩溃?
问题描述
如何使 python 仍在运行并显示哪个站点已关闭?以及将所有显示打印到 txt 日志文件的代码是什么?我目前正在使用 win 10 并使用此代码检查站点 ip 并每 6 小时进行一次比较,但是当其中一个站点关闭时,它会自动崩溃:
import requests, smtplib, time
urls = ['http://site1.com', 'http://site2.com', 'https://site3.com', 'https://site4.com', 'https://site5.com', 'https://site....com']
print("Checking websites:", str(urls))
def checkSites():
while True:
siteIPs = []
for site in urls:
request = requests.get(site, stream=True)
siteIPs.append([site, request.raw._connection.sock.getpeername()[0]])
current_ips = siteIPs
print("Current site IPs:", str(current_ips))
解决方案
导入请求、smtplib、时间
urls = ['http://site1.com', 'http://site2.com', 'https://site3.com', 'https://site4.com', 'https://site5.com', 'https://site....com']
print("Checking websites:", str(urls))
def checkSites():
while True:
siteIPs = []
for site in urls:
try:
request = requests.get(site, stream=True)
except:
print('Site offline')
siteIPs.append([site, request.raw._connection.sock.getpeername()[0]])
current_ips = siteIPs
print("Current site IPs:", str(current_ips))
推荐阅读
- visual-studio - Xamarin.Android:System.Runtime.Caching 无法解析引用
- python - 根据列找出数据框中的缺失值
- bootstrap-4 - 手动安装 Bootstrap4
- oracle - 如何计算 ORACLE 中 2 列之和的平均值?
- python - 从嵌套为python中字典值的两个列表中检索数据的最有效方法
- python - Bokeh 可以检测屏幕尺寸并重塑移动设备的布局吗?
- c++ - 交换两个对象的两个属性的值
- python - txt 与 dict 的 str 成 dict
- amazon-cloudwatch - CloudWatch Log Insights 中的多方面时间序列可视化
- compiler-construction - 转译/代码生成 - 变量声明问题