擅长:python、mysql、java
<p>这里的关键点是方法<code>cj.set_cookie</code>期望类<code>cookielib.Cookie</code>的对象作为其参数(所以<em>是的,还有另一个Cookie类</em>),<em>不是类<code>Cookie.SimpleCookie</code>的对象(或者模块<code>Cookie</code>中找到的任何其他类)。这些类(如所观察到的)根本不兼容,尽管名称的相似性令人困惑。</p>
<p>请注意,<code>cookielib.Cookie</code>的构造函数的参数列表可能在过去的某个时间点发生了更改(并且可能在将来再次更改,因为该类似乎不希望在<code>cookielib</code>之外使用),至少<code>help(cookielib.Cookie)</code>目前给了我</p>
<pre><code># Cookie(version, name, value, port, port_specified, domain,
# domain_specified, domain_initial_dot, path, path_specified,
# secure, expires, discard, comment, comment_url, rest, rfc2109=False)
</code></pre>
<p>注意附加的<code>expires</code>参数和<code>rfc2109</code>参数,它们在上面@Michael的答案中使用,但没有记录在代码中,因此示例应该类似于</p>
<pre><code>c = Cookie(None, 'asdf', None, '80', True, 'www.foo.bar',
True, False, '/', True, False, '1370002304', False, 'TestCookie', None, None, False)
</code></pre>
<p>(如果适用,还可以替换<code>None</code>的一些布尔常量)。</p>