正确的方法使用setattr侦听Selenium中当前的url更改

2024-04-29 01:59:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在开发一个基于Python-Selenium的导航伴侣,我需要在每次运行时触发一个函数驱动程序.currenturl'更改。但我相信我没有正确使用setattr。这将引发递归错误:“RecursionError:超出最大递归深度”。有什么建议吗?你知道吗

import time
from selenium import webdriver

class Browser(object):
    def __init__(self):
        driver = webdriver.Chrome('./chromedriver')
        driver.start_client()
        self.url = driver.current_url.lower()

    def whenChanged(self):
        print('changed')

    def __setattr__(self, key, value):
        self.key = value
        self.whenChanged()

def init():
    browser = Browser()

if __name__ == '__main__':
    init() 

Tags: key函数importselfbrowserurlinitvalue