urllib.urlopen在同一个端口上打开页面只是挂起

时间:2010-08-04 08:58:00

标签: python urllib

我正在尝试使用urllib.urlopen打开一个网页,该网页运行在与我加载它的页面相同的主机和端口上,它只是挂起。

例如,我有一个页面:“http://mydevserver.com:8001/readpage.html”,我有以下代码:

data = urllib.urlopen("http://mydevserver.com:8001/testpage.html")

当我尝试加载页面时,它只是挂起。但是,如果我将testpage.html脚本移动到同一主机上的其他端口,它可以正常工作。 e.g。

data = urllib.urlopen("http://mydevserver.com:8002/testpage.html")

有谁知道为什么会这样,以及如何解决问题?

3 个答案:

答案 0 :(得分:0)

也许是防火墙?尝试使用wget / curl(假设您使用的是Linux)或浏览器从命令行打开页面,同时设置两个端口。此外,您可以尝试使用数据包嗅探器来查找正在发生的事情以及连接卡住的位置。此外,如果动态生成testpage.html,看看它是否被命中,请检查网络服务器日志是否显示请求。

答案 1 :(得分:0)

也许某些东西已在端口8001上运行。页面是否可以通过浏览器正常打开?

答案 2 :(得分:0)

您似乎暗示您正在访问使用Python编写脚本的网页。这意味着Python脚本正在处理传入的连接,这可能意味着因为它已经处理了urllib调用,所以它也无法处理由它产生的连接。

显示您用于提供这些Python脚本的代码(或告诉我们使用的软件)。