我正在尝试下载一个带有Selenium的captcha图像,但是,我下载的图像与浏览器中显示的图像不同。 如果我尝试再次下载图像,而不更改浏览器,我会得到一个不同的图像。
有什么想法吗?
from selenium import webdriver
import urllib
driver = webdriver.Firefox()
driver.get("http://sistemas.cvm.gov.br/?fundosreg")
# Change frame.
driver.switch_to.frame("Main")
# Download image/captcha.
img = driver.find_element_by_xpath(".//*[@id='trRandom3']/td[2]/img")
src = img.get_attribute('src')
urllib.request.urlretrieve(src, "captcha.jpeg")
因为一旦你打开图片的链接,
src
就会给你一个随机的新的验证码图片!不必从图像的
src
下载文件,您可以截图在浏览器中获取该文件。但是,您需要下载Pillow
(pip install Pillow
)并像this answer中提到的那样使用它:(请注意,我已经稍微更改了代码,以便它可以在您的情况下工作。)
您可以使用一段Javascript获得captacha的渲染图像。它比截取和裁剪屏幕快照更快:
如果已经加载了映像,请使用
相关问题 更多 >
编程相关推荐