Python 如何查看用户是否已连接到internet?
我正在开发一个博客应用程序,但我遇到了一个问题 我想做的事 我正在尝试实现一个功能,`如果用户连接到internet,则一切正常,但如果用户未连接到internet,则显示类似“您未连接到internet”的消息 我试过什么Python 如何查看用户是否已连接到internet?,python,django,request,Python,Django,Request,我正在开发一个博客应用程序,但我遇到了一个问题 我想做的事 我正在尝试实现一个功能,`如果用户连接到internet,则一切正常,但如果用户未连接到internet,则显示类似“您未连接到internet”的消息 我试过什么 我也试过频道,但我认为互联网连接离Django频道很远 我也试过: url = "http://127.0.0.1:8000/" timeout = 5 try: request = requests.get(url, timeout=tim
- 我也试过频道,但我认为互联网连接离Django频道很远
- 我也试过:
url = "http://127.0.0.1:8000/" timeout = 5 try: request = requests.get(url, timeout=timeout) print("Connected to the Internet") except (requests.ConnectionError, requests.Timeout) as exception: print("No INTERNET")
提前谢谢要知道您是否已连接到internet并不容易。事实上,甚至不清楚这意味着什么。这在很大程度上取决于上下文 在许多实际情况下,这意味着您的网络设置是这样的:您可以访问DNS服务器,并且您可以访问internet上的至少一台计算机 您可以只使用一个已知的url,例如
“https://google.com“
或”https://stackoverflow.com“
然而,这意味着:
- 如果给定服务因任何原因中断,您的测试将失败
- 您创建了对不是您的服务器的请求
url=”https://your_special_webservice.yourdomain“
旁白:
如果将问题中的代码放入处理http请求的django视图中,那么您可能应该编写如下内容:
request = requests.get(url, timeout=timeout)
而不是
response = requests.get(url, timeout=timeout)
否则,您将覆盖django视图的请求
对象
这可能就是引发您的错误消息的原因:
“Response”对象没有属性“META”是一个使用
urllib.request.urlopen
的实现。一个简单的解决方法是使用js。。。检查----“你是对的,但是现在我想我应该使用JavaScript
来检查互联网连接的天气。使用JavaScript将互联网连接测试从web服务器移动到您的web浏览器中。这可能是一个好主意,具体取决于您想要实现的目标。(你可能想修改这个问题来反映这一点)是的,非常感谢你的努力