【发布时间】:2016-08-06 18:48:28
【问题描述】:
我正在尝试使用 Selenium 下载验证码图像,但是,我下载的图像与浏览器中显示的图像不同。 如果我尝试再次下载图像,而不更改浏览器,我会得到一个不同的。
有什么想法吗?
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 不一定(也可能不是)磁盘上的文件,但可能是动态生成的图像。每次请求端点时,都会创建一个新图像,并将 CAPTCHA 的“答案”存储在您的会话中。