2010-08-30 71 views
-1

谁能帮助我与循环,我想环路代码python循环!

login_form_data = urllib.urlencode(login_form_seq) 
opener = urllib2.build_opener() 
site = opener.open(B, login_form_data).read() 

代码让我登录到网站,但网站有问题,问题是:你不能从第一次登录

那意思是我必须按提交然后当页面重新加载时再次提交...所以我认为循环会这样做,但如何!?

+0

请为您的问题选择一个更有意义的标题。 – 2010-08-30 17:13:11

回答

2

您需要处理cookie。看看the cookielib module

+0

先生你可以向我解释一下吗?与代码和意见# – 2010-08-30 04:32:07

1

如果它是 cookie处理问题,请使用urllib2中的“HTTPCookieProcessor”。 通过将它应用到你的揭幕战。

cookieHandler = urllib2.HTTPCookieProcessor() # Needed for cookie handling 

# Apply the handler to an opener 
opener = urllib2.build_opener(cookieHandler)   
0

看来您并未接受并保存您尝试访问的页面所需的cookie。这并不奇怪,因为urllib2不会自动为您做这件事。正如其他人所说的,您必须明确编写代码才能接受Cookie。事情是这样的:

import urllib2, cookielib 
cj = cookielib.CookieJar() 
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) 
urllib2.install_opener(opener) 

login_form_data = urllib.urlencode(login_form_seq) 
site = opener.open(B, login_form_data).read() 

这将是阅读了在Python约cookielibHTTP state management的好时机。

+0

以及先生它不依赖于饼干,所以告诉我如何使它提交两次! – 2010-08-30 17:31:35