使用__setattr__侦听Selenium中current_url更改的正确方法

时间:2018-10-23 20:13:09

标签: python selenium selenium-chromedriver

我正在开发基于Python Selenium的导航伴侣,并且每次“ driver.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() 

0 个答案:

没有答案