我对编码和网页抓取很陌生。我注意到的一件事是当我打开一个带有url_1的浏览器,抓取其他类别的URL,然后尝试用相同的driver.get(_new_url)打开它们时,没有任何React,浏览器关闭。然而,如果我将webdriver.chrome(PATH)赋给一个新的变量名,例如new_driver,我可以继续使用new_driver。
任何人都可以解释为什么会发生这种情况,以及这一点是如何工作的?我是不是应该每次为每个新链接创建一个新的驱动程序对象?
这就是我基本上让代码工作的方法,但是我想知道为什么每次都需要创建一个新的驱动程序对象?
main_page = 'https://www.*******.com/gaming'
PATH = 'C:\Program Files (x86)\chromedriver.exe'
driver = webdriver.Chrome(PATH)
driver.get(main_page)
sub_categories = driver.find_elements(By.CLASS_NAME, 'list-nav- item.context-nav-link')
links = []
for el in sub_categories:
links.append(el.get_attribute('href'))
new_driver = webdriver.Chrome(PATH)
new_driver.get(links[0]) #going to 1st link obtained
1条答案
按热度按时间blmhpbnm1#
由于您已经收集了列表 links 中
href
属性的值,因此可以按如下所示将其全部打开: