我最近在SO的帮助下写了这篇文章。现在有人可以告诉我如何让它真正登录到董事会。它以非登录格式显示所有内容。
import urllib2, re
import urllib, re
logindata = urllib.urlencode({'username': 'x', 'password': 'y'})
page = urllib2.urlopen("http://www.woarl.com/board/index.php", logindata)
pagesource = page.read()
print pagesource
答案 0 :(得分:4)
最近有人问the same question you're asking。如果您仔细阅读该问题的答案,您将看到代码示例,向您展示如何使用标准库中的内容在Python脚本中浏览网站时保持登录状态。
接受的答案可能对this other answer没有用处,因为接受的答案涉及涉及重定向的特定问题。但是,无论如何,我建议阅读所有答案。
答案 1 :(得分:3)
答案 2 :(得分:1)
如果实际查看该页面,您会看到登录链接将您带到http://www.woarl.com/board/ucp.php?mode=login
该页面包含登录表单,并使用POST再次提交到http://www.woarl.com/board/ucp.php?mode=login。
然后你必须提取可能设置的cookie,并将它们放在CookieJar或类似的中。
答案 3 :(得分:0)
您可能想要使用这些处理程序创建一个opener并将其应用于urllib2。 如果应用了这些,您的cookie将被处理,如果服务器决定它需要您在其他地方,您将被重定向。
# Create handlers
cookieHandler = urllib2.HTTPCookieProcessor() # Needed for cookie handling
redirectionHandler = urllib2.HTTPRedirectHandler() # needed for redirection (not needed for javascript redirect?)
# Create opener
opener = urllib2.build_opener(cookieHandler,redirectionHandler)
# Install the opener
urllib2.install_opener(opener)