首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python urlopen连接已中止- urlopen错误[错误号10053]

Python urlopen连接已中止- urlopen错误[错误号10053]
EN

Stack Overflow用户
提问于 2011-03-10 02:06:40
回答 1查看 8K关注 0票数 6

我有一些代码,使用机械化和美丽汤的网页抓取一些数据。代码在测试机器上运行良好,但生产机器阻塞了连接。我得到的错误是:

代码语言:javascript
运行
复制
urlopen error [Errno 10053] An established connection was aborted by the software in your host machine

我已经读过类似的帖子,但我找不到这个确切的错误。我试图抓取的网站是HTTPS,但我也有同样的错误发生在HTTP网站上。我使用的是python 2.6和mechanize 0.2.4。

这是由于代理,还是如错误所说,是由于我的本地计算机上的某些原因?我已经为mechanize编写了使用系统代理的代码:

代码语言:javascript
运行
复制
br = mechanize.Browser()
br.addheaders = [('User-agent', 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1')]
br.set_proxies({}) #will use system default proxy
page = br.open(url)
html = page.read()
soup = BeautifulSoup.BeautifulSoup(html)

同样,这一切都可以在我的测试机器上运行,但是生产机器给出了10053的错误。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-11 23:18:25

这里的问题是一个基于主机的IDS阻止了连接。问题解决了。

我将我的python脚本添加到HIDS异常列表中。例外列表是我允许连接到互联网的文件列表。一旦它被添加到列表中,我就能够使用该脚本获得网络连接,并且没有进一步的问题。测试机器没有安装HIDS客户端,这就是为什么它允许我发言的原因。仅供参考,两台都有防火墙,但只有一台(生产机器)有HIDS。

HIDS是基于主机的入侵检测系统。如果网络安全团队使HIDS对您不可见,您可能不知道在哪里可以找到它。而且,即使你找到了它,你也不能禁用它。您可以询问您的安全团队是否可以为您的脚本添加例外。另一种绕过HIDS的秘密方法是将脚本构建到可执行文件中(使用Py2EXE),并将您创建的可执行文件重命名为HIDS异常列表中已有的内容。将其重命名为您的浏览器是一个很好的选择,因此,如果允许访问互联网,请将您的可执行文件重命名为firefox.exe。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5250183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档