Python:测试微软自动化开源库 playwright 过程中遇到的问题点:如何创建多个变量,用于代表多个标签页,然后各自打开相同或者不同的网址
Python:测试微软自动化开源库 playwright 过程中遇到的问题点:如何创建多个变量,用于代表多个标签页,然后各自打开相同或者不同的网址先来个我最开始的写法,很明显是错误的:for i in range(10):print('page' + str(i))# 很明显 这句话是错误的写法 ,报错信息如下: cannot assign to operator,意为:不能赋值给运算符'page
·
Python:测试微软自动化开源库 playwright 过程中遇到的问题点:如何创建多个变量,用于代表多个标签页,然后各自打开相同或者不同的网址
先来个我最开始的写法,很明显是错误的:
for i in range(10):
print('page' + str(i))
# 很明显 这句话是错误的写法 ,报错信息如下: cannot assign to operator,意为:不能赋值给运算符
'page' + str(i) = i
再来个优化后的写法(主要是定义了一个字典,解决多个变量定义的问题):
dic = {}
for i in range(10):
print('page' + str(i))
# 将其封装为一个字典,就可以更为优雅的解决我们的问题
dic['page' + str(i)] = i
应用到实际业务场景中就是这样,如果你没有安装微软的 playwright 库,需要按照如下步骤安装(看下面的前三行注释的代码)
# 打开 cmd 命令,就如同你安装其他库一样,输入下面两个指令
# pip install playwright==1.8.0a1 # 很奇怪,必须指定版本,不指定会安装到一个古老的版本
# python -m playwright install # 安装浏览器,此处国内网络可能会有问题(你懂的),请自行解决
from playwright.sync_api import sync_playwright # 微软的开源自动化库 playwright
from tkinter import messagebox # Python自带的标准库
dic = {} # 定义字典
with sync_playwright() as playwright:
browser = playwright.chromium.launch(headless=False) # 启动引擎,实例化对象
context = browser.new_context() # 需要创建一个 context,这是一个新的概念,不同于selenium,以后更为方便管理 cookies 和 ip代理
for i in range(10):
dic['page' + str(i)] = context.new_page()
dic['page' + str(i)].goto('https://www.baidu.com/')
messagebox.showinfo('提示','已处理,敬请查阅~')
context.close() # 关闭,养成好习惯~
browser.close() # 关闭,养成好习惯~
运行结果如下图:
愿你我,皆学有所成!
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献4条内容
所有评论(0)