import asyncio from browser_use import Agent, BrowserSession, ChatDeepSeek import configparser import os script_dir = os.path.dirname(__file__) config_path = os.path.join(script_dir, 'config.ini') config = configparser.ConfigParser() config.read(config_path) API_KEY = config['BROWSER_USE']['BROWSER_USE_API_KEY'] AGENT_EMAIL = config['AGENT_ACCOUNT']['AGENT_EMAIL'] AGENT_PWD = config['AGENT_ACCOUNT']['AGENT_PWD'] AGENT_CONTRACT = config['AGENT_ACCOUNT']['AGENT_CONTRACT'] CUSTOMER_EMAIL = config['CUSTOMER_ACCOUNT']['ODOO_EMAIL'] CUSTOMER_PWD = config['CUSTOMER_ACCOUNT']['ODOO_PWD'] CUSTOMER_NAME = config['CUSTOMER_ACCOUNT']['ODOO_NAME'] async def main(): browser_session = BrowserSession(headless=False) agent = Agent( task=f"""1.访问http://localhost:8070 2.点击电子邮件框后输入{AGENT_EMAIL},点击密码框后输入{AGENT_PWD},点击登录按钮 3.在侧边栏菜单中找到并点击"配置"菜单,点击合约菜单展开子菜单,找到合约菜单下的运输服务,单击运输服务 4.若已有名称为tests的运输服务,则点击tests后直接执行第8步,否则点击新建一个运输服务,名称设置为tests,服务类型选择FedEx Ground® 5.开始时间选择今天,结束时间选择明年的今天 6.单击成本合约,当下拉框成功展开后,点击"搜索更多..." 7.选择合约{AGENT_CONTRACT},点击保存,若保存失败,则再次从第6步开始执行 8.保存成功后点击附加费通用设置按钮,当附加费通用设置弹窗弹出,单击弹窗空白处 9.单击加价比例框后模拟按五下键盘的Backspace键,删去加价比例框中显示的内容,然后输入“1.5”,点击确认 10.点击更新附加费 11.找到合约菜单下的合约管理,单击合约管理,点击新建 12.单击客户选项框,下拉框成功显示后点击“搜索更多...”,单击名称为{CUSTOMER_NAME}的客户 13.点击运输服务框,下拉框成功显示后点击“搜索更多...”,单击运输服务tests 14.点击发货地址,下拉框成功显示后点击“搜索更多...”,点击第一个地址 15.勾选启用后保存 16.点击右上角头像,退出登录后,在登录页点击电子邮件框输入{CUSTOMER_EMAIL},密码框输入{CUSTOMER_PWD},点击登录""", llm=ChatDeepSeek(api_key=API_KEY), browser_session=browser_session, ) await agent.run() if __name__ == "__main__": asyncio.run(main())