【发布时间】:2021-05-23 06:56:56
【问题描述】:
我正在尝试从网站下载一些图片(图片是可变的)并且我使用了以下代码
from helium import *
for i in range(3):
driver = start_chrome("https://eservices.moj.gov.kw/searchPages/searchCases.jsp", headless=True)
element = driver.find_element_by_xpath("//*[@id='frmCaseNo']/div[2]/img")
driver.execute_script("arguments[0].scrollIntoView();", element)
element.screenshot(f'Number_{i}.png')
每个循环中的代码都会启动新的驱动程序,我认为这有点慢。我怎样才能只启动一次驱动程序然后多次导航到该 url?
我试过了
from helium import *
driver = start_chrome("https://eservices.moj.gov.kw/searchPages/searchCases.jsp", headless=True)
for i in range(3):
driver.get("https://eservices.moj.gov.kw/searchPages/searchCases.jsp")
element = driver.find_element_by_xpath("//*[@id='frmCaseNo']/div[2]/img")
driver.execute_script("arguments[0].scrollIntoView();", element)
element.screenshot(f'Number_{i}.png')
这很好,但我不确定我是否正确使用相同的 url 到 start_chrome,然后使用 get 方法再次使用该 url。
【问题讨论】:
-
为什么要循环并一次又一次地截取同一个元素?
-
只是尝试获取一些随机数并使用另一个代码对其进行测试,以便能够提取这些验证码上的数字。