当前位置: 代码迷 >> 综合 >> python2.7版本登录获取cookie并调用接口(一)
  详细解决方案

python2.7版本登录获取cookie并调用接口(一)

热度:94   发布时间:2023-11-22 17:06:45.0

背景

公司有个老项目,由于历史原因。需要每隔一段时间定时点击界面的某个同步按钮进行同步,本来想用java来实现,后面想着用python来实现应该会简单点,就尝试用python来写了下,废话不多说。开干

引入版本

#!/usr/bin/python2
# -*- coding:UTF-8 -*-
import json,chardet,requests
import os
import sys
import time
import httplib
httplib.HTTPConnection._http_vsn = 10
httplib.HTTPConnection._http_vsn_str = 'HTTP/1.0'
reload(sys)
sys.setdefaultencoding('utf8')

这里如果说有的库没安装的话,请使用pip install xxx 进行安装。 如果说pip都没安装,请自行百度安装pip。

编写获取cookie代码


#请求路径
url="xx.xx.xx.xx:xx"#登录并获取cookie
login_url="http://"+url+"/login"
#表单传值
login_head={
    "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8", "Connection": "keep-alive"}
#登录的参数
login_body={
    "username":"admin","password":"admin"}try:
#post请求 进行登录res = requests.post(url=login_url, headers=login_head, data=login_body, allow_redirects=False)cookies = res.cookies#打印cookiesprint(cookies)cookie = requests.utils.dict_from_cookiejar(cookies)['shiroCookie']print("cookie==>>"+cookie)
except Exception as err:print ('cookie!'+err)

这里需要特殊说明一个地方
allow_redirects=False 不进行重定向。因为登录接口一般都会重定向,导致cookie获取不到。

学习python群

python交流群:711607680

源码地址

  相关解决方案