鱼C论坛

 找回密码
 立即注册
查看: 569|回复: 9

请用python写一个检测网络连接的程序

[复制链接]
发表于 2024-8-7 09:04:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
笔记本电脑要重启动才能连接无线网,请针对此问题写一个python程序,检测、判断问题所在,最好自动解决此问题。

本帖被以下淘专辑推荐:

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2024-8-7 11:50:34 | 显示全部楼层
每一次都要重启吗?如果只是单独这一次,可能是长时间保持充电状态的原因,我的笔记本也出现过这种情况,设置里面的WIFI部分直接消失,可以把网卡退回到上一状态来解决
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-8-7 14:01:33 | 显示全部楼层
每一次停机后都要重启才能自动联无线网,找了很多方法都没用,重装系统嫌麻烦。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-8-7 15:41:18 | 显示全部楼层
网络重置试一下?
设置-网络和Internet - 状态 - 网络重置
https://zhuanlan.zhihu.com/p/141494731

点了立即重置之后记得别动电脑了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-8-8 07:34:02 | 显示全部楼层
还是不行。用360断网急救箱检测显示:网络连接配置异常,DNS服务异常。强力恢复只是一次有效,下次还是要重启。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-8-13 07:54:33 | 显示全部楼层
@fishc 请用python写一个检测网络连接的程序
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-8-13 07:57:13 | 显示全部楼层

@FishC 请用python写一个检测网络连接的程序
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-8-13 08:04:05 | 显示全部楼层
ydwb 发表于 2024-08-13 07:54
@fishc 请用python写一个检测网络连接的程序


当然可以!这里有个简单的 Python 程序,可以检测网络连接。我们将使用 `ping` 命令来测试网络是否可达。在 Windows 上,你可以使用 `ping` 来检查某个网站(比如 Google)。在 Linux 或 Mac 上也是一样的!

那么,让我们开始吧!下面是一个简单的程序示例:

  1. import os
  2. import platform

  3. def ping(host):
  4.     # 根据操作系统选择不同的命令
  5.     param = '-n' if platform.system().lower() == 'windows' else '-c'
  6.     command = ['ping', param, '1', host]

  7.     # 执行 ping 命令
  8.     return os.system(' '.join(command)) == 0

  9. def check_connection():
  10.     host = "www.google.com"  # 可以更换为其他网站
  11.     if ping(host):
  12.         print(f"网络连接正常,能够 ping 到 {host}!")
  13.     else:
  14.         print(f"哎呀,无法连接到 {host},请检查你的网络设置。")

  15. if __name__ == "__main__":
  16.     check_connection()
复制代码


### 程序解释:

1. **导入模块**:我们导入了 `os` 和 `platform`,这两个模块分别用来执行系统命令和识别操作系统类型。
2. **定义 `ping` 函数**:这个函数接受一个主机名(如 www.google.com),并根据当前操作系统生成合适的 ping 命令。
3. **定义 `check_connection` 函数**:这个函数主要用于调用 ping 函数并打印出结果。
4. **执行程序**:最后,如果直接运行这个脚本,它将会调用 `check_connection` 函数。

### 运行程序:
将上面的代码复制到一个 Python 文件中(比如 `check_connection.py`),然后在你的终端中运行它。它会告诉你是否能够连接到 Google!

希望这个程序能帮助你轻松地检测网络连接!如果有任何问题,随时问我哦!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-8-14 07:38:13 | 显示全部楼层
如果网络未连通,写一个程序检查相关硬件、设置是否正常。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-8-14 07:39:28 | 显示全部楼层
ydwb 发表于 2024-08-14 07:38
如果网络未连通,写一个程序检查相关硬件、设置是否正 ...


好的!我们可以写一个更复杂一点的 Python 程序来检查网络硬件和设置。这个程序将尝试检查以下内容:

1. 检查网卡是否启用。
2. 检查 DHCP 设置。
3. 检查 DNS 设置。

由于 Python 的标准库并不直接提供这些功能,我们将在此程序中调用系统命令以获取所需信息。请确保你有足够的权限运行这些命令。

下面是一个示例程序:

  1. import os
  2. import platform

  3. def check_network_interface():
  4.     # 获取操作系统类型
  5.     if platform.system().lower() == 'windows':
  6.         # Windows 使用 ipconfig
  7.         print("检查网络接口...")
  8.         response = os.popen('ipconfig').read()
  9.         print(response)
  10.     else:
  11.         # Linux/Mac 使用 ifconfig 或 ip a
  12.         print("检查网络接口...")
  13.         response = os.popen('ifconfig' if os.system('ifconfig') == 0 else 'ip a').read()
  14.         print(response)

  15. def check_dhcp():
  16.     if platform.system().lower() == 'windows':
  17.         print("检查 DHCP 设置...")
  18.         response = os.popen('ipconfig /all').read()
  19.         dhcp_enabled = "DHCP 已启用" in response
  20.         print("DHCP 状态:", "启用" if dhcp_enabled else "禁用")
  21.     else:
  22.         # 在 Linux 中使用 cat /etc/resolv.conf
  23.         print("检查 DHCP 设置...")
  24.         response = os.popen('cat /etc/resolv.conf').read()
  25.         print("DNS 配置如下:\n", response)

  26. def check_dns():
  27.     print("检查 DNS 设置...")
  28.     response = os.popen('nslookup www.google.com').read()
  29.     print(response)

  30. def main():
  31.     check_network_interface()
  32.     check_dhcp()
  33.     check_dns()

  34. if __name__ == "__main__":
  35.     main()
复制代码


### 程序说明:

1. **检查网络接口**:根据操作系统,使用适当的命令(Windows 使用 `ipconfig`,Linux/Mac 使用 `ifconfig` 或 `ip a`)来显示网络接口信息。
  
2. **检查 DHCP 设置**:对于 Windows,使用 `ipconfig /all` 显示所有网络适配器的详细信息,以检查 DHCP 是否启用。对于 Linux,可以查看 `/etc/resolv.conf` 来检查 DNS。

3. **检查 DNS 设置**:使用 `nslookup` 命令测试 DNS 是否可用,并显示结果。

### 运行方式:

将代码保存为 `check_network_setup.py`,然后在终端中运行它。它将逐步检查网络设置并输出相关信息。如果发现问题,可以根据输出的信息进一步进行排查。

希望这个程序能帮助你找到问题所在!如果你有任何疑问或需要更多帮助,请随时告诉我!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-21 05:59

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表