Python(四十九)——requests和httpx

Python(四十九)——requests和httpx

Python——requests和httpx获取cookie

    • Python(四十九)——requests和httpx
  • 1. 获取cookies
    • 1.1 requests获取cookies
      • 1.1.1 直接获取cookies
      • 1.1.2 session 获取cookies
    • 1.2 httpx获取cookie
    • 1.3 获取Set-Cookie
    • 1.4 cookie 失效
    • 1.5 获取cookie的问题
      • 1.5.1 发生了302重定向
      • 1.5.2 发生了跨域请求
  • 2、添加代理(requests和httpx的代理样式不一样)
    • 2.1 requests添加代理
      • 2.1.1get或者post
      • 2.1.2 session
    • 2.2 httpx添加代理

1. 获取cookies

1.1 requests获取cookies

1.1.1 直接获取cookies

response = requests.get(url=url, headers=headers)
response.cookies.items()

1.1.2 session 获取cookies

session = requests.session()

1.2 httpx获取cookie

response.cookies.items()

1.3 获取Set-Cookie

response = requests.get(url=url, headers=headers)
set_cookies = response.headers.get('Set-Cookie')
# 注意,如果是重定向的话,会获取不到set-cookie,需要allow_redirects=False来禁止重定向
response = requests.get(url=url, headers=headers, allow_redirects=False)

1.4 cookie 失效

3.1 将cookie放在cookies参数里

1.5 获取cookie的问题

1.5.1 发生了302重定向

看请求是否发生了302重定向
使用requests.Session()方法,会使该连接持久化

1.5.2 发生了跨域请求

2、添加代理(requests和httpx的代理样式不一样)

2.1 requests添加代理


proxies={
    'http': 'http://ip:port',
    'https': 'http://ip:port',
}

2.1.1get或者post

import requests
url=""
response=requests.get(url=url, proxies=proxies)

2.1.2 session

import requests
url=""
session = requests.session()
session.proxies.update(proxy)

2.2 httpx添加代理

import httpx
proxies = {
    'http://': 'http://ip:port',
    'https://': 'http://ip:port',
}
url = ""
response = httpx.get(url=url, proxies=proxies)

你可能感兴趣的:(python,httpx,开发语言)