34新一代自动化测试神器playwright+python系列课程_playwright_滚动到元素出现的位置

34_playwright_滚动到元素出现的位置

当页面比较长,超过浏览器的高度时候,有些元素虽然没有显示,但是实际已经加载到页面上了,是可以直接操作的,而且playwright 在点击元素的时候,会自动滚动到元素出现的位置,这点是非常人性化的。

但有些元素需要滚动到元素出现的位置,让元素处于可视的窗口上才能去操作。 或者网站是通过上拉加载的方式请求接口实现翻页的,这个时候就需要控制滚动条实现向下拖动,实现翻页的功能。

Playwright提供了scroll_into_view_if_needed()方法,可以控制滚动条滚动到元素显示的位置。

使用方法:

Locator. scroll_into_view_if_needed()

接下来我们以163网站为例看一下该方法的使用。

实践代码:

# '''

# author: 测试-老姜   交流微信/QQ:349940839

# 欢迎添加微信或QQ,加入学习群共同学习交流。

# QQ交流群号:877498247

# 西安的朋友欢迎当面交流。

# '''

from playwright.sync_api import Playwright, sync_playwright, expect

playwright = sync_playwright().start()

browser = playwright.chromium.launch(headless=False, args=['--start-maximized']) #默认无头模式,设置浏览器最大化

context = browser.new_context(no_viewport=True) # 创建上下文,相当浏览器于实例化,即打开浏览器

page = context.new_page() # 打开一个新标签页

page.goto("https://www.163.com/") # 打开网址

page.wait_for_timeout(2000)

page.locator('text=楼市利好!央行、金融监管总局发文!').scroll_into_view_if_needed()

page.wait_for_timeout(10000)

context.close()

browser.close()

playwright.stop()

posted @ 2024-03-21 11:01  测试_老姜  阅读(24)  评论(0)    收藏  举报