Html 如何使用selenium、beautifulsoup和python 3从页面读取和保存图像?

Html 如何使用selenium、beautifulsoup和python 3从页面读取和保存图像?,html,css,selenium-webdriver,beautifulsoup,tesseract,Html,Css,Selenium Webdriver,Beautifulsoup,Tesseract,我在这里的议程是,我想保存一个登录过程后,从一个网站单一的图像。检查后的图像返回的完整xpath为/html/body/form/main/div/section/div[1]/div/div[2]/div/img。我希望使用Beauty soup或图像爬虫,将图像保存到变量中,然后使用tesseract从图像中提取文本。最近我一直在努力处理urllib、urllib.requests和selinium通过x.path读取的图像。我的想法是使用selenium保存图像,但没有找到任何结果。现在我

我在这里的议程是,我想保存一个登录过程后,从一个网站单一的图像。检查后的图像返回的完整xpath为
/html/body/form/main/div/section/div[1]/div/div[2]/div/img
。我希望使用Beauty soup或图像爬虫,将图像保存到变量中,然后使用tesseract从图像中提取文本。最近我一直在努力处理urllib、urllib.requests和selinium通过x.path读取的图像。我的想法是使用selenium保存图像,但没有找到任何结果。现在我需要有关编码部分的帮助,我想知道是否可以将图像保存到变量,以及tesseract是否可以从该变量访问该图像。下面给出了图像样本及其检查图像。(已检查的文本图像高亮显示)。表单只是一个示例,在现实生活中并不存在(至少我还不知道)。任何帮助都将不胜感激。非常感谢

图1:

图2:


您可以使用urllib保存图像

import urllib
from selenium import webdriver

driver = webdriver.Chrome()
driver.get(WEBSITE_URL)

# get the image  
img = driver.find_element_by_xpath('/html/body/form/main/div/section/div[1]/div/div[2]/div/img')
src = img.get_attribute('src')

# download the image
urllib.request.urlretrieve(src, "img.png")
这会将图像保存到工作目录中的img.png文件中,然后可以使用图像处理和tesseract从中提取文本。我不建议使用静态XPATH来查找图像,因为如果网站所有者更改了网站上的任何内容,图像可能会更改,相反,您应该使用以下方法:

img=driver.按id查找元素(“ContentPlaceHolder1\u Imgquestions”)

因此,即使网站布局发生变化,您仍然可以通过其id找到图像