Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 Cookies.txt看起来不错,但没有';行不通_Python 2.7_Cookies_Mechanize_Mozilla_Autologin - Fatal编程技术网

Python 2.7 Cookies.txt看起来不错,但没有';行不通

Python 2.7 Cookies.txt看起来不错,但没有';行不通,python-2.7,cookies,mechanize,mozilla,autologin,Python 2.7,Cookies,Mechanize,Mozilla,Autologin,我正在尝试使用Python登录到一个网站并保存cookies.txt文件,但它不起作用。但我想我已经很接近了 运行Python脚本后,cookies.txt文件如下所示: # Netscape HTTP Cookie File # http://www.netscape.com/newsref/std/cookie_spec.html # This is a generated file! Do not edit. website.com FALSE / FALSE

我正在尝试使用Python登录到一个网站并保存cookies.txt文件,但它不起作用。但我想我已经很接近了

运行Python脚本后,cookies.txt文件如下所示:

# Netscape HTTP Cookie File
# http://www.netscape.com/newsref/std/cookie_spec.html
# This is a generated file!  Do not edit.

website.com     FALSE   /   FALSE       PHPSESSID   ejFRMWtNc0YwYjdVeXQ4c25NWUUvOC9CcVZXUnV4eFhjNnlITGs...
当我登录到同一个网站并从Firefox手动导出它时,它看起来如下所示:

# Netscape HTTP Cookie File
# http://www.netscape.com/newsref/std/cookie_spec.html
# This is a generated file!  Do not edit.

website.com     FALSE   /   FALSE   0   SRLOGIN OfHFowieHRHizaoriK
website.com     FALSE   /   FALSE   0   PHPSESSID   L2tCdzNoZnhXQ09DV0FZUk4zc1pxSXhJS2ZvRDNjeTNlUU9WQlVvOGlRNW9mSXdGTFZyd...
因此,区别在于后一个文件有两行,以及“0”,我相信它指的是cookie的超时(因此设置为不过期)

下面是我用来创建cookies.txt文件的Python脚本:

cj = cookielib.MozillaCookieJar()
br.set_cookiejar(cj)
br.set_handle_equiv(True)
br.set_handle_gzip(True)
br.set_handle_redirect(True)
br.set_handle_referer(True)
br.set_handle_robots(False)
br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=0)
br.addheaders = [('User-agent', 'Mozilla')]
br.open('http://website.com')
for f in br.forms():
    print f
br.select_form(nr=0)
br.form['user[username]'] = 'john' 
br.form['user[password]'] = 'secret'
response = br.submit()        
cj.save(cookie_filename, ignore_discard=True, ignore_expires=True)

外面有人吗??:(您是否尝试过设置正确的用户代理字符串?谢谢您的评论!您所说的“正确”用户代理字符串是什么意思?请原谅我的无知,希望您能提供帮助!