Joe*_*moe 2 python cookies pycurl
我需要pycurl来保存发布表单中的cookie,然后在相同域中的下一个URL中使用这些cookie。它似乎不会自动执行此操作。
我已经阅读了COOKIEFILE和COOKIEJAR选项,但是我不想将这些cookie保存到文件中。那么,还有其他方法可以启用带有curl / pycurl的cookie而不将其保存到文件吗?
好吧,libcurl文档指出:
CURLOPT_COOKIEFILE
给定一个空文件或不存在文件,或者通过传递空字符串(“”),此选项将为该curl句柄启用cookie,使其理解并解析收到的cookie,然后在以后的请求中使用匹配的cookie。
自己尝试一下,效果很好,只需使用相同的curl对象。
例
import pycurl
curl = pycurl.Curl()
# Turn on cookies
curl.setopt(pycurl.COOKIEFILE, "")
# Login
curl.setopt(pycurl.URL, "http://www.example.com/login.php")
curl.setopt(pycurl.POST, 1)
curl.setopt(pycurl.HTTPPOST, [('user', 'myuser'), ('pass', 'mypass'), ('submit', 'login')])
curl.perform()
# Now let's get us some members only page
curl.setopt(pycurl.POST, 0)
curl.setopt(pycurl.URL, "http://www.example.com/members_only.php")
curl.perform()
Run Code Online (Sandbox Code Playgroud)
我跳过了整个StringIO响应,因此我们可以保持话题。
| 归档时间: |
|
| 查看次数: |
4949 次 |
| 最近记录: |