一:使用Python中的urllib类中的urlretrieve()函数,直接从网上下载资源到本地,具体代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import os,stat
import urllib.request
  
  "d44&imgtype=jpg&er=1&src=http%3A%2F%2Fupload.qianhuaweb.com%2F2017%2F0718%2F1500369506683.jpg"
file_path='D:/book/img'
file_name ="pyt"
  
try:
 #是否有这个路径
 if not os.path.exists(file_path):
 #创建路径
  os.makedirs(file_path)
  #获得图片后缀
 file_suffix = os.path.splitext(img_url)[1]
 print(file_suffix)
  #拼接图片名(包含路径)
 filename = '{}{}{}{}'.format(file_path,os.sep,file_name,file_suffix)
 print(filename)
  #下载图片,并保存到文件夹中
 urllib.request.urlretrieve(img_url,filename=filename)
  
except IOError as e:
 print("IOError")
except Exception as e:
 print("Exception")

二:利用读写操作写入文件,具体代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import os,stat
import urllib.request
  
for i in range(1,3):
 if not os.path.exists("./rym"):
  print("不纯在")
  os.makedirs("./rym")
  
 else:
  print("存在")
  os.chmod("D:/imagss",777)
  
  
         "b301fea27c2149a7070d44&imgtype=jpg&er=1&src=http%3A%2F%2Fupload.qianhuaweb.com%2F2017%2F0718%"
         "2F1500369506683.jpg", timeout=30) as response, open("./rym/lyj.png"
    , 'wb') as f_save:
   f_save.write(response.read())
   f_save.flush()
   f_save.close()
   print("成功")

转载:https://www.jb51.net/article/161314.htm

Python下载图片并保存本地的两种方式的更多相关文章

  1. python中字典的循环遍历的两种方式

    开发中经常会用到对于字典.列表等数据的循环遍历,但是python中对于字典的遍历对于很多初学者来讲非常陌生,今天就来讲一下python中字典的循环遍历的两种方式. 注意: python2和python ...

  2. Java通过图片url地址获取图片base64位字符串的两种方式

    工作中遇到通过图片的url获取图片base64位的需求.一开始是用网上的方法,通过工具类Toolkit,虽然实现的代码比较简短,不过偶尔会遇到图片转成base64位不正确的情况,至今不知道为啥. 之后 ...

  3. python 并发编程 多线程 开启线程的两种方式

    一 threading模块介绍 multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性 二 开启线程的两种方式 第一种 每造一个进程,默认有一个线程,就是 ...

  4. html页面保存数的两种方式

    原文链接:https://blog.csdn.net/qq_37936542/article/details/78866755 需求:微信开发时,在某个页面授权获取用户的openid,但是每次刷新页面 ...

  5. sklearn保存模型的两种方式

    sklearn 中模型保存的两种方法   一. sklearn中提供了高效的模型持久化模块joblib,将模型保存至硬盘. from sklearn.externals import joblib # ...

  6. 利用Python进行图片发送与接收的两种方法---包含客户端和服务器端代码

    第一种方法 opencv.requests.flask 此方法比较耗费时间 600毫秒左右 客户端代码 #coding:utf-8 import cv2 import json import requ ...

  7. 利用Selenium实现图片文件上传的两种方式介绍

    在实现UI自动化测试过程中,有一类需求是实现图片上传,这种需求根据开发的实现方式,UI的实现方式也会不同. 一.直接利用Selenium实现 这种方式是最简单的一种实现方式,但是依赖于开发的实现. 当 ...

  8. fetch更新本地仓库两种方式:

    来源:https://www.cnblogs.com/chenlogin/p/6592228.html //方法一 $ git fetch origin master //从远程的origin仓库的m ...

  9. python编写的banner获取代码的两种方式

    1.无选项和帮助信息 #!/usr/bin/env python #coding:utf-8 import socket import sys import os from threading imp ...

随机推荐

  1. element组件 MessageBox不能显示确认和取消按钮,记录正确使用方法!

    这里是局部引入 调用方式:

  2. springcloud【基于springboot1.x】的简单发布服务和使用

    1.新建一个springboot 1.x项目[2.x之上有bug,就没测试] 就是新建一个注册中心 2.等下载完,注册中心配置application.yml server: port: 8761 eu ...

  3. 浅谈python反序列化漏洞

    最近看到p神一篇讲python反序列化的文章,结合redis未授权访问组合漏洞,感觉在flask和redis的构架中比较常见,便记录下来. p神原文:https://www.leavesongs.co ...

  4. linux编程 新建一个进程的方法

    学习到一种,直接调用系统函数,在类的构造函数中直接启动一个线程,例如,某个类是用来监听串口的,可以直接在其构造函数中调用系统函数,开辟一个进程,在该进程对应的函数中不断while(1){....} h ...

  5. varnish缓存清理

    本篇日志应该较早该去写的,一直脱了好久,直到最近才写.在使用任务cache工具时,都会提到的一个问题.如何只清理想清理的那部分缓存,而其已缓存的部分不受影响 .这里就要用到varnishadm工具,先 ...

  6. [.Net] - 使用 iTextSharp 生成基于模板的 PDF,生成新文件并保留表单域

    背景 基于 PDF Template 预填充表单项,生成一份新的 PDF 文件,并保留表单域允许继续修改. 代码段 using iTextSharp.text.pdf; /* Code Snippet ...

  7. Shiro身份认证、盐加密

    目的: Shiro认证 盐加密工具类 Shiro认证 1.导入pom依赖 <dependency> <groupId>org.apache.shiro</groupId& ...

  8. Thread interrupted() 线程的中断

    问题: 1.线程的中断方式. 2.为什么中断阻塞中的线程,会抛出异常. 代码示例: package com.hdwl.netty; public class ThreadInterrupted { p ...

  9. QQ、微信 唯一登陆设计

    唯一登陆设计指一个账号可以在多个不同的客户端进行登陆,例如PC.Android.IOS等.每一个客户端就会生成一个对应的tokan,相当于生成三个token分别对应不同的客户端. 但是同一个客户端同时 ...

  10. intellij idea 中右键项目没有git

    1.没有GIT选项说明还没有关联你的仓库 2.ctrl + alt +s 打开VersionControl添加git仓库 3.添加后再次查看,GIT就出现了 4.可以查看历史版本了. 原文地址:htt ...