在自动化处理过程中,有些操作往往需要登录之后才能进一步操作,所以我们需要通过登录获取到cookies信息,因为登录信息一般都是保存到cookies当中的,我们只需要在登录完成后把请求返回的cookies放到需要登录的url请求的headers中即可模拟已登录操作。
# 自动登录
def login():
# 登录表单信息
data = {
"ticket": "xxxxx",
"randstr": "xxxxx",
"id": "xxxxx",
"passwd": "xxxxx"
}
# headers信息
headers = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36',
'content-type': 'application/x-www-form-urlencoded; charset=UTF-8',
'x-requested-with': 'XMLHttpRequest'
}
session = requests.session()
cookies = session.post(url='登录协议URL地址', data=data,headers=headers).cookies
cookie_t = requests.utils.dict_from_cookiejar(cookies)
# 将cookies转为cookie字符串
cookies_str = ''
for cookie in cookie_t:
cookies_str += cookie + "=" + cookies[cookie] + ";"
return cookies_str