前言
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定位

def gaokao(): start_chrome("https://gkcx.eol.cn/school/search") get_driver().maximize_window() time.sleep(2) wait_until(Text("學校名稱").exists) list = [] for i in find_all(S("#myTable")): highlight(i) print(i.web_element.text) list.append(i.web_element.text) time.sleep(1) return list kill_browser() gaokao()
2、方法二:通過 find_all(S("table > tbody"))獲取表格數據
代碼如下
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()
頁面分析:
如下圖紅色原框標記的位置
打印效果:
歡迎交流
310678696