2
我正在尝试创建一个小脚本,它将在后台运行并检查是否包含论坛中的新消息(使用phpBB3)。由于许多subforums需要登录用户的权限才能查看,我创建了一个脚本,它会向服务器发送后请求以首先登录。登录到phpBB论坛。 Cookie已更改
该脚本目前获得成功登录,并迎来一条欢迎消息,告诉我我已登录。但是,当我访问新页面时,脚本似乎忘记了我已登录并且会话cookie已更改。
下面是一些小的测试代码我创建了给我的错误:
import urllib, urllib2, cookielib, re, time
username = "username"
password = "password"
loginsite = "http://www.mydomain.com/ucp.php?mode=login"
ok_tekst = "You have been successfully logged in."
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
login_data = urllib.urlencode({'username' : username, 'password' : password,
"autologin" : "on", 'login' : 'Login'})
resp = opener.open(loginsite, login_data)
if ok_tekst in resp.read():
print "Login successfull"
print "Cookies are:"
for cookie in cj:
print cookie
post_site = "http://www.mydomain.com/"
ok_tekst = "Logout [ " + username + " ]"
resp = opener.open(post_site)
readHTML = resp.read()
if ok_tekst not in readHTML:
print ""
print "Unsuccessfull, I am now logged out?!"
print "Cookies are now:"
for cookie in cj:
print cookie
这将产生以下输出也给出了不同的cookie值:
>> python test.py
Login successfull
Cookies are:
<Cookie phpbb3_pwsle_k=b3fe944b89bfbce2 for .mydomain.com/>
<Cookie phpbb3_pwsle_sid=318b3ace3d52409fb5e1eef87433fbdb for .mydomain.com/>
<Cookie phpbb3_pwsle_u=419 for .mydomain.com/>
Unsuccessfull, I am now logged out?!
Cookies are now:
<Cookie phpbb3_pwsle_k= for .mydomain.com/>
<Cookie phpbb3_pwsle_sid=719520cd3a16526d6da4fa2fbdfe40f4 for .mydomain.com/>
<Cookie phpbb3_pwsle_u=1 for .mydomain.com/>
你有任何其他的代码吗?我复制/粘贴,并把我的用户/通过和测试对我的论坛,并按预期工作。 – Andy 2012-08-08 15:57:58
这是我正在使用的代码。 (只有更改是隐藏用户名和密码) – Etse 2012-08-08 18:41:19
你有什么版本的phpbb3?就像我说的,我无法复制这个问题。 – Andy 2012-08-08 18:59:12