From 1d01ddf216bd45a47ee13b07a139217304fe8cb2 Mon Sep 17 00:00:00 2001 From: g1879 Date: Tue, 20 Oct 2020 15:41:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0texts=E5=B1=9E=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DrissionPage/driver_element.py | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/DrissionPage/driver_element.py b/DrissionPage/driver_element.py index 2a4ccee..03934f5 100644 --- a/DrissionPage/driver_element.py +++ b/DrissionPage/driver_element.py @@ -61,6 +61,26 @@ class DriverElement(DrissionElement): """返回元素内所有文本""" return unescape(self.attr('innerText')).replace('\xa0', ' ') + @property + def texts(self) -> List[str]: + """返回元素内文本节点列表""" + js = ''' + function e(el) { + if (!(el instanceof Element)) return; + var texts = new Array(); + var childs = el.childNodes; + + for(var i = 0; i str: """返回元素innerHTML文本""" @@ -73,6 +93,7 @@ class DriverElement(DrissionElement): @property def css_path(self) -> str: + """返回当前元素的css路径""" js = ''' function e(el) { if (!(el instanceof Element)) return; @@ -98,6 +119,7 @@ class DriverElement(DrissionElement): @property def xpath(self) -> str: + """返回当前元素的xpath路径""" js = ''' function e(el) { if (!(el instanceof Element)) return; @@ -125,12 +147,11 @@ class DriverElement(DrissionElement): @property def shadow_root(self): + """返回当前元素的shadow_root元素路径""" e = self.run_script('return arguments[0].shadowRoot') if e: from .shadow_root_element import ShadowRootElement return ShadowRootElement(e, self) - else: - return None @property def parent(self):