【Python web自动化】之读取配置文件参数,利用cookie返回值进行跳过验证码进行登录操作
当进行Python的Web自动化时,会涉及到验证码问题,该如何跳过执行呢,下面请看代码:
1、首先新建配置文件*.ini格式
config.ini
[db]
#基础地址:
baseurl = http://192.168.xxx
#参数:
m_user = 13077997162
m_pass = 123456
2、调用configparser模块进行读取文件操作,没有的自行下载
login.py
import configparser def mlogin(): ''' 登录函数 :return:【cookie】:value ''' cf = configparser.ConfigParser() cf.read("./config.ini") baseurl = cf.get("db", "baseurl") #接口地址 url = baseurl + "/Admin/Account/loginupdate.html" m_user = cf.get("db", "m_user") m_pass = cf.get("db", "m_pass") return cookie_value(url,m_user,m_pass)
读取的url,m_user,m_pass的值传参到获取cookie值的方法中,通过用户密码传到接口中再返回cookie值,如下
def cookie_value(url,username,password): ''' 返回cookie:value :param url: 地址 :param username: 用户名 :param password: 密码 :return: cookie:value ''' payload = {'username':username,'pwd':password} r = requests.post(url=url,data=payload) return r.cookies['PHPSESSID']
返回cookie字符串的值。
最后编写自动化脚本执行登录如下:
test.py
import login import configparser driver = webdriver.Chrome() driver.implicitly_wait(0.5) cf = configparser.ConfigParser() cf.read('./config.ini') webbaseurl = cf.get('db','baseurl') driver.get(webbaseurl + "/xxx/Public/index") driver.maximize_window() sleep(0.5) #添加cookie value = login.mlogin() driver.add_cookie({'name': 'PHPSESSID', 'value': value}) sleep(0.5) # 刷新页面 driver.refresh() sleep(0.5)
参考文章:
感谢:
Mike_Zhang:《读取配置文件和自定义配置文件(python实现)》
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App