我一直在尝试登录 http://www.qualtrics.com/login/然后保存一个 cookie 文件,但它不起作用。
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie_jar))
opener.addheaders =[('Referer', 'http://www.qualtrics.com'),
('User-Agent','Mozilla/5.0 (Windows NT 6.1; rv:26.0) Gecko/20100101 Firefox/26.0'),
('Content-Type','application/x-www-form-urlencoded')]
url = 'http://www.qualtrics.com/login/'
data = {'method' : '1', 'login' : 'my-username', 'password' : 'my-password'}
req = urllib2.Request(url, urllib.urlencode(data))
res = opener.open(req)
但响应是没有帐户的人会看到的(它不起作用)。 有什么帮助吗?此外,cookie 文件应如下所示:
# Netscape HTTP Cookie File
# http://www.netscape.com/newsref/std/cookie_spec.html
# This is a generated file! Do not edit.
value / value / value etc
最佳答案
虽然这看起来有点宽泛但不会selenium为您提供一个良好的起点。有很多很好的例子可以借鉴。从 this example 窃取
from selenium import webdriver
browser = webdriver.Firefox()
browser.get('http://www.example.com')
browser.find_element_by_name('username').send_keys('myusername')
browser.find_element_by_name('password').send_keys('mypassword')
browser.find_element_by_class_name('welcomeLoginButton').click()
cookies = browser.get_cookies()
您可能需要在其中放置一些等待语句,但 Stack Overflow 上有很多示例和大量信息 in the docs
编辑: 修复了文档链接。
关于python - 使用 Python 登录网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24154471/