当前位置: 首页 > news >正文

网站木马文件删除网站建设基础教程视频

网站木马文件删除,网站建设基础教程视频,提高学历去哪里报名正规,网店代运营哪家好目录 鼠标事件 悬停 移动 按键 点击 滚轮操作 拖拽 键盘事件 输入文本内容 type输入内容 fill输入内容 按键操作press 文件上传 下拉选/单选框/复选框 滚动条操作 鼠标事件 悬停 page.get_by_text(设置,exactTrue).nth(1).hover() 移动 page.mouse.move(x33…

目录

鼠标事件

悬停

移动

按键

点击

滚轮操作

拖拽

键盘事件

输入文本内容

type输入内容

fill输入内容

按键操作press

文件上传

下拉选/单选框/复选框

滚动条操作


鼠标事件

悬停

page.get_by_text('设置',exact=True).nth(1).hover()

移动

page.mouse.move(x=33, y=50)

按键

# 点击操作可设置button参数,选择点击键["left", "middle", "right"]
page.mouse.click(x=100, y=200)
page.mouse.dblclick(x=100, y=200)
page.mouse.up()
page.mouse.down()

点击

点击支持选择不同点击键["left", "middle", "right"]

    page.click('#su')  # 单击,默认点击左键page.locator('xpath=//a[text()="百度首页"]').dispatch_event('click')  # 此方法支持键盘等事件,参数为click时同click()page.locator('xpath=//a[text()="设置"]').click(button='right')  # 右击page.locator('xpath=//a[text()="百度首页"]').click(position={'x': 10, 'y': 20})  # 点击元素的某个点# 键盘+鼠标点击,键盘键支持的类型(Alt|Control|ControlOrMeta|Meta|Shift)page.locator('xpath=//a[text()="百度首页"]').click(modifiers=["Shift"])  # 模拟按下Shift同时点击元素page.locator('#su').dblclick()  # 双击

滚轮操作

    page.mouse.wheel(delta_x=100, delta_y=0)  # 水平向右page.mouse.wheel(delta_x=-100, delta_y=0)  # 水平向左page.mouse.wheel(delta_x=0, delta_y=500)  # 垂直向下page.mouse.wheel(delta_x=0, delta_y=-500)  # 垂直向上for _ in range(100):page.mouse.wheel(delta_x=0, delta_y=10)sleep(.1)

拖拽

拖拽的分步式为先鼠标悬停到要拖拽的元素上,然后按下鼠标不放,再将鼠标移动到目标为止松开鼠标。

    page.locator('xpath=//a[text()="百度首页"]').hover()page.mouse.down()page.locator('#kw').hover()page.mouse.up()

合并写法

    page.locator('xpath=//a[text()="百度首页"]').drag_to(page.locator('#kw'))

键盘事件

    page.keyboard.insert_text('测试一下')  # 键盘输入内容,这个操作只触发‘input’事件,不发出‘keydown’, ‘keyup’或‘keypress’事件。for _ in range(5):page.keyboard.press('Control+A')page.keyboard.press('Control+C')page.keyboard.press('Control+V')page.keyboard.down('Control')  # 按下page.keyboard.up('Control')  # 抬起

输入文本内容

type和fill支持input、textarea、contenteditable标签元素的内容输入。但输入结果有所不同,type()输入内容不会清除后输入,会在原来内容的基础上追加。fill()会先清空内容后再输入,可以看成clean和type的组合。通过循环输入可看出差异

type输入内容
    # 清空内容page.locator('#kw').clear() for _ in range(5):page.locator('#kw').type(text='测试')sleep(.5)
fill输入内容
    for _ in range(5):# page.fill('#kw', '自动化')page.locator('#kw').fill('测试')

按键操作press

支持键盘按键,可执行的按键有Backquote, Minus, Equal, Backslash, Backspace, Tab, Delete, Escape,ArrowDown, End, Enter, Home, Insert, PageDown, PageUp, ArrowRight,ArrowUp, F1 - F12, Digit0 - Digit9, KeyA - KeyZ, etc。同时支持单个字符的输入,如输入特殊符号,如¥,&等。

Control(即Ctrl键)、方向键ArrowLeft(小键盘左边的向左的箭头键,可根据实际需要换成对应的方向键)

    page.locator('#kw').press("Control+ArrowLeft")page.locator('#kw').press("Control+ArrowRight")page.locator('#kw').press("&")  # 输入&符号page.locator('#kw').press("Shift+A")  # 控制输入大小写

文件上传

支持上传单个或多个文件上传多个文件时,使用列表传入。

    file_name = [r'D:\儿童音频诗词歌曲\22  三字经+弟子规+百家姓(全集)跟读\11 《三字经》11.mp3',r'D:\儿童音频诗词歌曲\22  三字经+弟子规+百家姓(全集)跟读\10 《三字经》10.mp3']page.locator('xpath=//input[@name="file"][@multiple="multiple"]').nth(0).set_input_files(file_name)

下拉选/单选框/复选框

select_option()支持在 < select > 元素中选择一个或多个选项。# 支持value和label的参数选择(参数值可以是单个字符串或多个值的列表),支持通过下标index选择(参数值可以是单个int值或多个int值的列表),根据多选和单选决定。

page.locator('xpath=//select[@name="sutext"]').select_option('启用')

对于input中具有checkbox属性的元素可使用check或set_checked选择值。set_checked是选中或取消选择复选框或单选按钮最简单的方法。

page.get_by_label('XXX').check()  # 选中
page.get_by_label('XXX').uncheck()  # 取消选中
page.get_by_label('XXX').is_checked()  # 元素是否选择状态,返回布尔值
page.locator('[value="姓名"]').set_checked(checked=True)  # set_checked设置选中状态
page.set_checked('[value="姓名"]', checked=True)

滚动条操作

滚动操作有三种方式:通过上面的鼠标滚轮操作、通过scroll_into_view_if_needed方法操作、通过执行JavaScript语句操作。

通过滚轮和JavaScript语句操作可通过先获取页面高度再循环操作。

    height = page.query_selector('body').evaluate("document.body.scrollHeight")  # 获取页面高度for h in range(0, height, 100):  # 每100个像素滚动一次# page.evaluate_handle(f'window.scrollTo(0,{h});')page.evaluate(f'window.scrollTo(0,{h});')page.wait_for_timeout(500)

滚动到指定元素出现

方法1:

page.locator('xpath=//input[@name="file"][@multiple="multiple"]').last.scroll_into_view_if_needed()  # 滚动到指定元素为止

方法2:

expression = '''const element = document.querySelector("#su");if (element) {{element.scrollIntoView();}}'''
page.evaluate(expression)
http://www.yayakq.cn/news/807218/

相关文章:

  • 长沙网站定制网站开发总体流程图
  • 宜昌市做网站的公司东莞网站建设完整
  • 网站精美排版代码建网站需要什么设计专业
  • 如何攻击网站WordPress数据多了会卡吗
  • 去掉网站侧边栏网站的建设费 账务处理
  • 建设网站的优点跟缺点如何建立一个网站 供客户选图
  • 淘特app官方网站下载凡客网登录
  • 黄页网站介绍wordpress安装模板
  • 江苏新站优化教育网站制作下载
  • 网站建设项目需求费用高端网站设计新感觉建站
  • 网站开发后端技术企业官网制作费用
  • 现在币圈有那些私募网站做的好网站的备案在哪备案吗
  • 安阳网站建设哪家正规做乡村旅游的网站
  • it培训网站模板做网站多少前
  • 兰州公司做网站wordpress升级后空白
  • 鹿班设计网站官网徐州做网站的公司有哪些
  • 怎么做网站广告代理商中铁二局深圳公司官网
  • 免费企业名录网站windows10优化工具
  • 实用网站模板南阳网站制作价格
  • 网站站内推广计划书wordpress三栏cms主题
  • 石家庄兼职做网站wordpress第三方登录组件
  • 怎么给网站做访问量东莞公司注册地址变更流程
  • 企业网站建设用语扬州哪里做网站
  • 公司网站服务器维护福州网红餐厅
  • 网站开发者morz免费企业名录
  • php做视频网站源码石家庄建站模板源码
  • 张家界市建设局网站工商局网站建设方案
  • 国外电子政务j建设与我国电子政务网站建设对比做网站什么配置够用
  • 9免费建网站腾讯域名怎么做网站
  • 店名logo在线制作免费襄阳seo费用