python爬虫如果获取cookie并放置在请求头中 请举例
时间: 2024-12-16 20:31:09 浏览: 6
python爬虫添加请求头代码实例
5星 · 资源好评率100%
在Python爬虫中,如果你需要获取到某个网站的Cookie并将其包含在HTTP请求的头信息中,你可以使用`requests`库。以下是一个简单的例子:
```python
import requests
# 假设我们有一个需要登录的网站,并且我们需要它的Cookie
def get_cookie(url):
# 使用session保存cookies,这样后续的所有请求都会带上这个Cookie
session = requests.Session()
# 发起一个GET请求,登录并获取Cookie
response = session.get(url)
# 获取到响应头中的Set-Cookie字段,这是一个列表,包含了所有Cookie
cookies = response.headers['Set-Cookie']
# 对每个Cookie进行解析(这里通常会更复杂,因为实际的Cookie格式可能会有多种)
parsed_cookies = {}
for cookie in cookies:
name, value = cookie.split('=', 1) # 这里只是一个简单示例,真实场景可能需要正则表达式或其他方式解析
parsed_cookies[name] = value
return parsed_cookies
# 获取Cookie后,可以在发送其他请求时设置它们
url_to_crawl = 'https://example.com'
cookie_dict = get_cookie(url_to_crawl)
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3',
'Cookie': '; '.join(f'{name}={value}' for name, value in cookie_dict.items()), # 合并成字符串形式的Cookie
}
response = requests.get(url_to_crawl, headers=headers)
```
在这个例子中,每次发送新的请求时,我们都会自动携带之前获取到的Cookie。
阅读全文