Python urllib2.URLError:<urlopen error [Errno 10048]通常只允许使用每个套接字地址(协议/网络地址/端口)>

Pol*_*Pol 4 python urllib2

我正在与API建立多个连接.进行删除查询.我在第3000个查询中得到了这个错误.

像这样的东西:

 def delete_request(self,path):
    opener = urllib2.build_opener(urllib2.HTTPHandler)
    request = urllib2.Request('%s%s'%(self.endpoint,path))
    signature = self._gen_auth('DELETE', path, '')
    request.add_header('X-COMPANY-SIGNATURE-AUTH', signature)
    request.get_method = lambda: 'DELETE'
    resp = opener.open(request)
Run Code Online (Sandbox Code Playgroud)

比在控制台:

for i in xrange(300000): 
    con.delete_request('/integration/sitemap/item.xml/media/%d/' % i)
Run Code Online (Sandbox Code Playgroud)

在大约3000'之后,它说:

URLError: urlopen error [Errno 10048]
Only one usage of each socket address (protocol/network address/port)
is normally permitted
Run Code Online (Sandbox Code Playgroud)

ism*_*ail 9

该错误来自Windows本身,请参阅避免TCP/IP端口耗尽.要修复错误关闭连接,您不会调用opener.close()因此泄漏套接字.