Selenium 在搜索元素时等待了很多

Posted

技术标签:

【中文标题】Selenium 在搜索元素时等待了很多【英文标题】:Selenium wait a lot while searching for element 【发布时间】:2022-01-16 22:49:06 【问题描述】:

我正在开发一种软​​件来查找网站源代码中的电子邮件地址。 但有时网站的来源很长,所以搜索时间很长。 如何为此设置特定时间并在此时间到期后切换到其他网站网址?

    for query in my_list:
        results.append(search(query, tld="com", num=3, stop=3, pause=2))

    for result in results:
        url = list(result)
        print(*url,sep='\n')
        for site in url:
            driver = webdriver.Chrome()
            driver.get(site)
            doc = driver.page_source
            emails = re.findall(r'[\w\.-]+@[\w\.-]+', doc)
            for email in emails:
                print(email)

结果 = [] start_time = time.time() 在 my_list 中查询: results.append(search(query, tld="com", num=3, stop=3, pause=2))

for result in results:
    url = list(result)
    print(*url,sep='\n')
    for site in url:
        driver = webdriver.Chrome()
        driver.get(site)
        doc = driver.page_source
        emails = re.findall(r'[\w\.-]+@[\w\.-]+', doc)
        for email in emails:
            print(email)
if time.time() - start_time > 10:
    # if 10 seconds pass do something
    start_time = time.time()
time.sleep(3)
driver.close()

【问题讨论】:

【参考方案1】:
import time
start_time = time.time()

# your code

while True:
    if time.time() - start_time > 2:
        # if 2 seconds pass do something
        start_time = time.time()
        print("2 seconds passed")

【讨论】:

我编辑了它,但它不起作用。我与您在上面共享的代码共享了组合版本,您能看到吗?我哪里做错了? 如果你愿意,可以在 discord bilke#1227 上加我,我们可以在那里交谈 对不起,我不使用不和谐,只是我的代码和任何机会整合和分享你的修复?【参考方案2】:

您可以使用 python 时间模块等待提供时间,如下所示:

import time

for site in url:
    driver = webdriver.Chrome()
    driver.get(site)
    time.sleep(8)

       

【讨论】:

以上是关于Selenium 在搜索元素时等待了很多的主要内容,如果未能解决你的问题,请参考以下文章

python selenium中等待元素出现及等待元素消失操作

Python +selenium之设置元素等待

Selenium请求过快 解决方法

python+selenium2自动化---设置元素等待

Selenium 等待 HTML 元素更改

python selenium系列元素等待