我的一个脚本在 XP 系统上完美运行,但确切的脚本挂在 2003 系统上。我总是使用 mechanize 来发送 http 请求,这里有一个例子:
import socket, mechanize, urllib, urllib2
socket.setdefaulttimeout(60) #### No idea why it's not working
MechBrowser = mechanize.Browser()
Header = {'User-Agent': 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 GTB7.1 (.NET CLR 3.5.30729)', 'Referer': 'http://www.porn-w.org/ucp.php?mode=login'}
Request = urllib2.Request("http://google.com", None, Header)
Response = MechBrowser.open(Request)
我认为我的代码没有任何问题,但是每次针对特定 url 的某个 http POST 请求时,它都会挂在 2003 年的计算机上(仅在该 url 上)。这一切可能是什么原因,我应该如何调试?
顺便说一句,直到几个小时前,脚本都可以正常运行。并且没有更改任何设置。