python根据url下载数据_Python读取TXT文件中的URL并下载文件

说明: 上一篇只是把image表格存入到数据库,后序又存入了classname表格,bbox表格等,通过连接查询最终获取到想要的所有url地址。采用简单粗糙的方法,把获取到的url地址全部存储到txt文件中,之后通过读取txt文件中的内容下载图片到本地。

1.前提说明

ladder.txt

bfb95160858d

ladder链接样式

2.出现问题

urllib.error.URLError:

解决参考:

https://stackoverflow.com/questions/49183801/ssl-certificate-verify-failed-with-urllib

所以最后的程序为:

# -*- coding: utf-8 -*-

# 根据图片链接列表获取图片保存到本地

from urllib.request import urlretrieve

import os

# 解决

import ssl

ssl._create_default_https_context = ssl._create_unverified_context

'''

通过txt网址文件,现在图片到本地

'''

def download():

categories = ['ladder']

for category in categories:

# 新建存储ladder文件夹存储图片

os.makedirs('data/%s' % category, exist_ok=True)

# 读取txt文件

with open('%s.txt' % category, 'r') as file:

urls = file.readlines()

# 计算链接地址条数

n_urls = len(urls)

# 遍历链接地址下载图片

for i, url in enumerate(urls):

try:

# 请求下载图片,并截取最后链接第一最后一节字段命名图片

urlretrieve(url.strip(), 'data/%s/%s' % (category, url.strip().split('/')[-1]))

print('%s %i/%i' % (category, i, n_urls))

except:

print('%s %i/%i' % (category, i, n_urls), 'no image')

if __name__ == '__main__':

download();

3. 补充说明

其实在刚运行代码时,总是进入except运行,之后在测试过程中print(url.strip())都是可以打印出正确的链接地址,点击链接也可以查看到图片,所以就测试直接打印 print( urlretrieve(url.strip(), 'data/%s/%s' % (category, url.strip().split('/')[-1]))), 此时输出错误:urllib.error.URLError:

4.参考

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:深蓝海洋 设计师:CSDN官方博客 返回首页
评论

打赏作者

元认知

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值