ITPub博客

首页 > 数据库 > > Helium文档9-WebUI自动化-find_all获取页面table数据

Helium文档9-WebUI自动化-find_all获取页面table数据

作者:LCR_ 时间:2022-04-12 16:00:46 0 删除 编辑

前言

find_all关键字根据官方介绍的作用是查找所有出现GUI元素,并且返回list,下面通过举例说明

入参介绍

def find_all(predicate):
"""
Lets you find all occurrences of the given GUI element predicate. For
instance, the following statement returns a list of all buttons with label
"Open"::

find_all(Button("Open"))

Other examples are::

find_all(Window())
find_all(TextField("Address line 1"))

The function returns a list of elements of the same type as the passed-in
parameter. For instance, ``find_all(Button(...))`` yields a list whose
elements are of type :py:class:`Button`.

In a typical usage scenario, you want to pick out one of the occurrences
returned by :py:func:`find_all`. In such cases, :py:func:`list.sort` can
be very useful. For example, to find the leftmost "Open" button, you can
write::

buttons = find_all(Button("Open"))
leftmost_button = sorted(buttons, key=lambda button: button.x)[0]
weitungblog
"""

举例说明

1、方法一:通过id定位

 

 View Code

 

2、方法二:通过 find_all(S("table > tbody"))获取表格数据

代码如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from helium import *
import time
 
def gaokao():
    start_chrome("https://gkcx.eol.cn/school/search")
    time.sleep(2)
    wait_until(Text("学校名称").exists)
    list = []
    for i in find_all(S("table > tbody")):
        highlight(i)
        print(i.web_element.text)
        list.append(i.web_element.text)
        time.sleep(1)
    return list
    kill_browser()
gaokao()

 页面分析:

如下图红色原框标记的位置

打印效果:

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70000523/viewspace-3169981/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2022-02-22

  • 博文量
    1402
  • 访问量
    15054