【问题标题】:How do I download a image from a url with Python 3?如何使用 Python 3 从 url 下载图像?
【发布时间】:2021-08-24 23:40:01
【问题描述】:

任何人都可以帮助我使用以下代码,我正在尝试使用 Python 从以下 url 下载图像。我在网上查看并得到了以下代码,但它在 urllib 请求中给了我以下错误?

import urllib.request 
from selenium import webdriver
driver = webdriver.Chrome('c://CSALE//chromedriver.exe')
driver.get('https://kbdevstorage1.blob.core.windows.net/asset-blobs/19950_en_1')
img = driver.find_element_by_xpath('/html/body/img').get_attribute('src')
urllib.request.urlretrieve(img, "wolf.png")
driver.close()

错误:

urllib.error.URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>

【问题讨论】:

  • 一种解决方法是使用 driver.save_screenshot 可以工作,但下方和一侧不理想

标签: python-3.x selenium google-chrome selenium-chromedriver urllib


【解决方案1】:

我用请求模块做了以下事情:

img = driver.find_element_by_xpath('/html/body/img').get_attribute('src')

data = requests.get(img).content
local_filename = 'Dog_with_Selenium.jpg'

with open(local_filename, 'wb') as f:
  f.write(data)

【讨论】:

  • 刚刚尝试过,但仍然收到错误 Max retries exceeded with url: /asset-blobs/19950_en_1 (由 NewConnectionError(': Failed to建立一个新连接:[WinError 10061] 无法建立连接,因为目标机器主动拒绝它')) - 不确定是代码还是问题所在
  • 这不是这段代码的相关错误,我得到了预期的输出。再试一次。
  • 您的代码在未连接到工作代理时按预期工作。我实际上检查了我的原始代码,它也在工作......我想问题是什么是更快的 urllib 或请求。感谢发帖
猜你喜欢
  • 2021-10-22
  • 1970-01-01
  • 1970-01-01
  • 2017-04-29
  • 2018-05-05
  • 1970-01-01
  • 2019-12-24
  • 2014-09-07
  • 1970-01-01
相关资源
最近更新 更多