首页 > 应用开发 > Python > python爬取过程中使用cookies的方法
首先,你需要有有效的cookies。这些cookies可能来源于手动登录网站后浏览器存储的cookies,或者通过自动化测试(如Selenium)模拟登录过程后获取的cookies。
Set-Cookie字段,这些就是你需要的cookies。如果你正在使用Selenium进行自动化测试,你可以直接从Selenium的WebDriver中获取cookies:
python
from selenium import webdriver
driver = webdriver.Chrome()
driver.
get(
"http://example.com/login")
# 模拟登录过程...
# 获取cookies
cookies = driver.get_cookies()
# cookies是一个列表,每个元素是一个字典,包含name和value
获取到cookies后,你可以将它们存储在一个文件(如JSON文件)或数据库中,以便后续使用。
python
import json
# 假设cookies是从Selenium获取的
cookies_list = [
{
"name":
"cookie_name1",
"value":
"cookie_value1"},
{
"name":
"cookie_name2",
"value":
"cookie_value2"},
# ...
]
with
open(
'cookies.json',
'w')
as f:
json.dump(cookies_list, f)
一旦你有了cookies,你就可以在
requests请求中使用这些cookies来模拟登录状态。
python
import requests
# 从文件加载cookies
with
open(
'cookies.json',
'r')
as f:
cookies_list = json.load(f)
# 将cookies列表转换为requests可以使用的字典格式
cookies_dict = {cookie[
'name']: cookie[
'value']
for cookie
in cookies_list}
# 使用cookies访问网站
response = requests.get(
'http://example.com/protected_page', cookies=cookies_dict)
print(response.text)
Secure属性,则这些cookies可能不能通过HTTP请求发送。通过这种方式,你可以使用Python和requests库来批量模拟登录状态,访问需要登录权限的网站页面。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70040412/viewspace-3024549/ ,如需转载,请注明出处,否则将追究法律责任。