我目前正在通过出色的 Python 挑战赛 ( http://www.pythonchallenge.com/ )。我正在解决的当前问题涉及 urllib 库的使用,但我遇到了问题。我正在尝试使用此库通过我公司的防火墙连接到该站点。让我们从一些代码开始:
proxy = {'http':'http://my.companys.proxy/proxy.pac'}
urllib.urlopen('http://www.pythonchallenge.com', proxies=proxy).read()
这会产生一个 http 响应,但奇怪的是它是 Apache HTTP 服务器测试页面:
...Red Hat Enterprise Linux测试页面...此页面用于测试 Apache HTTP 服务器在安装后的正常运行等...
因此,我似乎成功地在我们的防火墙之外实现了 http 连接,但获得的 http 响应与我的浏览器不同。另一个线索(或没有)是当我尝试连接到 about.php 页面时:
urllib.urlopen('http://www.pythonchallenge.com/about.php', proxies=proxy).read()
然而,这会产生:
404 未找到... Apache 2.2.3 Red Hat Server,位于 www.pythonchallenge.com 端口 80
上面的两个地址在我的浏览器中都可以正常工作(使用相同的代理)。有什么想法我哪里出错了吗?