Skip to content Skip to sidebar Skip to footer

How To Send Cookies Inside Post Request

trying to send Post request with the cookies on my pc from get request #! /usr/bin/python import re #regex import urllib import urllib2 #get request x = urllib2.urlopen('http://w

Solution 1:

Just create a HTTP opener and a cookiejar handler. So cookies will be retrieved and will be passed together to next request automatically. See:

import urllib2 as net
import cookielib
import urllib   

cookiejar = cookielib.CookieJar()
cookiejar.clear_session_cookies()
opener = net.build_opener(net.HTTPCookieProcessor(cookiejar))

data = urllib.urlencode(values)
request  = net.Request(url, urllib.urlencode(data))
response = opener.open(request)

As opener is a global handler, just make any request and the previous cookies sent from previous request will be in the next request (POST/GET), automatically.


Solution 2:

You should really look into the requests library python has to offer. All you need to do is make a dictionary for you cookies key/value pair and pass it is as an arg.

Your entire code could be replaced by

#import requests
url = 'http://example' # to know the values type any password to know the cookies
values = {"username" : "admin",
                  "passwd" : password,
                  "lang" : "" ,
                  "option" : "com_login",
                  "task" : "login",
                  "return" : "aW5kZXgucGhw" }
session = requests.Session()
response = session.get(url, data=values)
cookies = session.cookies.get_dict()
response = reqeusts.post(url, data=values, cookies=cookies)

The second piece of code is probably what you want, but depends on the format of the response.


Post a Comment for "How To Send Cookies Inside Post Request"