diff --git a/DrissionPage/chromium_element.py b/DrissionPage/chromium_element.py index 5cb0717..e717c75 100644 --- a/DrissionPage/chromium_element.py +++ b/DrissionPage/chromium_element.py @@ -1662,11 +1662,15 @@ class Click(object): can_click = False timeout = self._ele.page.timeout if timeout is None else timeout - end_time = perf_counter() + timeout - while perf_counter() < end_time: + if timeout == 0: if self._ele.states.is_in_viewport and self._ele.states.is_enabled and self._ele.states.is_displayed: can_click = True - break + else: + end_time = perf_counter() + timeout + while perf_counter() < end_time or timeout == 0: + if self._ele.states.is_in_viewport and self._ele.states.is_enabled and self._ele.states.is_displayed: + can_click = True + break if not self._ele.states.is_in_viewport: by_js = True diff --git a/setup.py b/setup.py index 2a108c8..2518924 100644 --- a/setup.py +++ b/setup.py @@ -6,7 +6,7 @@ with open("README.md", "r", encoding='utf-8') as fh: setup( name="DrissionPage", - version="3.2.18", + version="3.2.19", author="g1879", author_email="g1879@qq.com", description="Python based web automation tool. It can control the browser and send and receive data packets.",