python selenium 获取数据_我如何遍历页面并从每一页使用selenium获取数据?

我想做一个谷歌搜索,收集所有点击的链接,这样我就可以点击这些链接,并在收集完所有链接后从中提取数据。我怎样才能从每一次点击中获得链接?在

我尝试过几种解决方案,比如使用for循环和whiletrue语句。下面我将展示一些代码示例。我要么没有得到任何数据,要么我只得到数据(链接)从1个网页。有人能帮我弄清楚如何在谷歌搜索的每一页上进行迭代,并获得所有链接,这样我就可以继续抓取这些页面了吗?我刚开始使用Selenium,所以很抱歉,如果代码没有多大意义,我真的把自己和这个混淆了。在driver.get('https://www.google.com')

search = driver.find_element_by_name('q')

search.send_keys('condition')

sleep(0.5)

search.send_keys(Keys.RETURN)

sleep(0.5)

while True:

try:

urls = driver.find_elements_by_class_name('iUh30')

for url in urls

urls = [url.text for url in urls]

sleep(0.5)

element = driver.find_element_by_id('pnnext')

driver.execute_script("return arguments[0].scrollIntoView();", element)

sleep(0.5)

element.click()

^{pr2}$

while True:

next_page_btn = driver.find_element_by_id('pnnext')

if len(next_page_btn) <1:

print("no more pages left")

break

else:

urls = driver.find_elements_by_class_name('iUh30')

urls = [url.text for url in urls]

sleep(0.5)

element = driver.find_element_by_id('pnnext')

driver.execute_script("return arguments[0].scrollIntoView();", element)

sleep(0.5)

element.click()

我希望从google搜索中得到一个可以被Selenium打开的所有url的列表,这样Selenium就可以从这些页面中获取数据。在

我只从一个页面得到一个url列表。下一步(刮掉那些页面)工作正常。但由于这个限制,我只得到10个结果,而我想看到所有的结果。在