📅  最后修改于: 2023-12-03 15:19:11.930000             🧑  作者: Mango
在进行Web开发过程中,经常需要使用Cookie来记录用户的信息。本文将介绍如何使用Python请求获取Cookie。
在使用Python请求获取Cookie前,需要安装requests库和cookiejar库。
pip install requests
pip install http.cookiejar
我们可以使用requests库进行GET或POST请求,从而获取Cookie。下面是一个例子:
import requests
# 构造请求
url = "http://www.example.com"
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"
}
response = requests.get(url, headers=headers)
# 获取Cookie
cookiejar = response.cookies
for cookie in cookiejar:
print(f"{cookie.name}={cookie.value}")
以上代码中,我们使用requests库的get方法请求一个URL,并通过headers参数模拟浏览器请求。然后通过response.cookies属性获取Cookie,最后遍历Cookie输出。
获取Cookie后,我们可以将其写入本地文件。下面是一个例子:
import requests
import http.cookiejar
# 构造请求
url = "http://www.example.com"
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"
}
response = requests.get(url, headers=headers)
# 获取Cookie
cookiejar = http.cookiejar.CookieJar()
cookiejar.extract_cookies(response, response.request)
cookie_handler = http.cookiejar.LWPCookieJar(filename="cookie.txt")
cookie_handler.save(ignore_discard=True, ignore_expires=True)
以上代码中,我们使用http.cookiejar.CookieJar()来创建一个CookieJar对象,从response对象中提取Cookie并保存到本地文件。在后续请求中,我们可以通过读取本地文件来设置Cookie:
import requests
import http.cookiejar
# 读取Cookie
cookie_handler = http.cookiejar.LWPCookieJar(filename="cookie.txt")
cookie_handler.load(ignore_discard=True, ignore_expires=True)
cookiejar = requests.utils.dict_from_cookiejar(cookie_handler)
# 构造请求
url = "http://www.example.com"
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"
}
response = requests.get(url, headers=headers, cookies=cookiejar)
print(response.text)
以上代码中,我们使用http.cookiejar.LWPCookieJar()来创建一个CookieJar对象,并从本地文件中加载Cookie。在后续请求中,我们使用requests.utils.dict_from_cookiejar()方法将CookieJar对象转换为字典,通过cookies参数传递给requests库的get方法来使用Cookie。
本文介绍了如何使用Python请求获取Cookie,并在后续请求中使用Cookie。Cookie的使用是Web开发中不可缺少的部分,希望本文能帮助您更好地理解Python中Cookie的使用。