写了一个循环检测端口的程序,循环的次数多了,会报Errno 9: Bad file descriptor in python socket错误。程序如下:def Scan_port(host,port):

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

#socket.setdefaulttimeout(10)

s.settimeout(10)

t = 1

while 1:

try:

s.connect((host,port))

s.close()

break

except socket.error, e:

s.close()

if t > 3:

print e

break

else:

t = t + 1

time.sleep(1)

socket连接超时时间为10s,超时之后重试3次,3次依然连接不到或是超时,则抛错。这个函数加入到多线程,多个主机时就会报Errno 9: Bad file descriptor in python socket错误。查找了材料,都说是s.close()在循环里面是主线问题的主要原因,不管s.close()在循环中的那个位置都会出现这个错误。后修改了这段代码如下:def Scan_port(host,port):

t = 1

while 1:

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

#socket.setdefaulttimeout(10)

s.settimeout(10)

try:

s.connect((host,port))

s.close()

break

except socket.error, e:

s.close()

if t > 3:

print e

break

else:

t = t + 1

time.sleep(1)

把初始化socket提进循环中,经测试2000台服务器的端口不在出错,运行测试了一天没有问题。

python bad file descriptor_Errno 9: Bad file descriptor in python socket错误处理相关推荐

  1. python 安装nameerror_python NameError:name’file’未定义

    我不太了解python.我想开始研究项目,安装说明说: pip install -r requirements-dev.txt 简单的enougth.问题是我得到这个: Downloading/unp ...

  2. 【转】/usr/bin/python^M: bad interpreter: No such file

    转自:http://hanbaobao2005.blog.51cto.com/647054/635256 今天在WingIDE下写了个脚本,传到服务器执行后提示: -bash: /usr/bin/au ...

  3. Python学习笔记:文件(File)

    Python学习笔记:文件(File) 打开一个文件用于读写,在Python里十分简单,利用内置open函数,可以用绝对路径,也可以用相对路径. 默认模式是'r',只读模式. 文件句柄f是一个可迭代对 ...

  4. File “C:\Users\hjl\AppData\Local\Programs\Python\Python38\lib\site-packages\pymysql\err.py“, line 1

    今天通过python程序给数据库的表格插入数据,却提示报错 File "C:\Users\hjl\AppData\Local\Programs\Python\Python38\lib\sit ...

  5. python 魔兽世界升级脚本_How to use Python to automatically modify WoW toc file version

    魔兽世界(World of Warcraft)每次版本升级以后,在没有新版插件出来的时候,通常都需要手工修改插件目录中的toc文件,将其中的版本号修改为当前版本,否则在插件界面会显示"版本错 ...

  6. Python之xlrd读Excel文件问题解决 (python xlrd unsupported format, or corrupt file.)

    最近使用PyChram创建xls文件导致不能读取写入该文件 解决:在桌面上手动创建Excel文件即可解决. import xlrd import xlutils.copy #打开一个workbook ...

  7. python:Non-ASCII character ‘\xe2′ in file

    python 2.7系列的  在运行.py文件时 报错python:Non-ASCII character '\xe2′ in file 解决办法:  在文件顶部 加入  #  coding: utf ...

  8. python出现file stdin_第一个Python程序hello.py提示出现File stdin,line 1错误

    写第一个Python程序hello.py,内容仅有一句,print 'hello world', 运行 Python hello.py 出错,提示: File "" , line ...

  9. python报错:No such file or directory: ‘D:\\Anaconda3\\lib\\venv\\scripts\\nt\\python.exe‘

    原因就是相应目录下没有Python解析器,将 D:\Anaconda3 下的 python.exe python.pdb pythonw.exe pythonw.pdb 四个文件复制到 D:\\Ana ...

最新文章

  1. A 'return' expression required in a function with a block body ('{...}')
  2. java 声明静态类_java静态类声明--java类可以声明为static吗
  3. 快速理解JavaScript面向对象编程—原型
  4. postgresql在线备份与恢复(三)
  5. 《穿靴子的猫》蓝光720P 1080P高清中英双字 下载
  6. 1088 三人行 (20 分)
  7. 游戏引擎中的通用编程技术
  8. 累加数据段中的前3个字型数据
  9. 计算有向图的可达矩阵的算法及其MATLAB实现
  10. pay.onzan.en app.php,IBOS 协同办公平台PHP版 v1.0
  11. 线性代数高频考题:判断含参数的线性方程组解的形式
  12. C#程序设计--控制台程序输出上下三角形和菱形
  13. Java Excel导出(包含图片) —— Easypoi
  14. 第一步:文献阅读与翻译
  15. matlab 深度网络,深度信念网络matlab代码
  16. 无卷积!金字塔视觉Transformer(PVT):用于密集预测的多功能backbone
  17. Android内存优化大全(二)
  18. 关于意识形成过程的认识
  19. java获取真实ip的方法
  20. Hazelcast 知识点认知梳理

热门文章

  1. 快商通李稀敏:近场声纹识别将普及,本地化的AI能力是刚需
  2. linux svn revert,svn revert 复原整个目录
  3. 收高德仍无解,阿里还有三步棋
  4. Penetration Test 渗透测试
  5. Web实现:flex弹性布局项目自动充满剩余空间
  6. android 高仿点餐,仿饿了吗点餐界面ListView联动的实现
  7. 将零碎内容价值化,“清博大数据”为政府、企业提供新媒体大数据服务
  8. 美国是名副其实的“黑客帝国”
  9. 周小川指责美元恶意贬值给中国造成伤害
  10. js判断页面是否处于选中状态啊