修复link问题;修复eles()返回空时的问题

This commit is contained in:
g1879 2024-08-01 16:03:40 +08:00
parent 60a1803e28
commit ded3e10020
3 changed files with 4 additions and 8 deletions

View File

@ -1298,7 +1298,7 @@ class ShadowRoot(BaseElement):
if result: if result:
return result return result
return NoneElement(self.owner) if index is not None else [] return NoneElement(self.owner) if index is not None else ChromiumElementsList()
def _get_node_id(self, obj_id): def _get_node_id(self, obj_id):
"""返回元素node id""" """返回元素node id"""

View File

@ -165,11 +165,7 @@ def make_absolute_link(link, baseURI=None):
link = link.strip().replace('\\', '/') link = link.strip().replace('\\', '/')
parsed = urlparse(link)._asdict() parsed = urlparse(link)._asdict()
if baseURI: if baseURI:
if link.startswith('./'): baseURI = baseURI.rstrip('/\\')
baseURI = baseURI[:baseURI.rfind('/') + 1]
else:
p = urlparse(baseURI)._asdict()
baseURI = f'{p["scheme"]}://{p["netloc"]}'
# 是相对路径与页面url拼接并返回 # 是相对路径与页面url拼接并返回
if not parsed['netloc']: if not parsed['netloc']:

View File

@ -19,7 +19,7 @@ from .._elements.chromium_element import run_js, make_chromium_eles
from .._elements.none_element import NoneElement from .._elements.none_element import NoneElement
from .._elements.session_element import make_session_ele from .._elements.session_element import make_session_ele
from .._functions.cookies import CookiesList from .._functions.cookies import CookiesList
from .._functions.elements import SessionElementsList, get_frame from .._functions.elements import SessionElementsList, get_frame, ChromiumElementsList
from .._functions.locator import get_loc from .._functions.locator import get_loc
from .._functions.settings import Settings from .._functions.settings import Settings
from .._functions.tools import raise_error from .._functions.tools import raise_error
@ -627,7 +627,7 @@ class ChromiumBase(BasePage):
raise PageDisconnectedError raise PageDisconnectedError
if perf_counter() >= end_time: if perf_counter() >= end_time:
return NoneElement(self) if index is not None else [] return NoneElement(self) if index is not None else ChromiumElementsList()
sleep(.1) sleep(.1)
timeout = end_time - perf_counter() timeout = end_time - perf_counter()