python获取网络图片方法及整理过程详解


Posted in Python onDecember 20, 2019

这篇文章主要介绍了python获取网络图片方法及整理过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

方式1

使用urllib库

import urllib.request
import os ,stat
url = "https://cn.bing.com/th?id=OHR.Lidong2019_ZH-CN0761273672_1920x1080.jpg"
try:
  urllib.request.urlretrieve(url,filename="/home/baixiaoxu/desk/123.jpg")
except IOError as e:
  print("IOE ERROR")
except Exception as e:
  print("Exception")

注意:
1,获取地址,判断地址是否存在
2,本地保存地址,判断存在
3,获取远程地址的图片名,或改名
"""
url = "https://cn.bing.com/th?id=OHR.Lidong2019_ZH-CN0761273672_1920x1080.jpg"
file_suffix = os.path.split(url)[1][-20:-1]
print(file_suffix)
"""

2,使用系统库文件读写操作

import urllib.request
import os ,stat

req = urllib.request.Request(url)
file = "/home/baixiaoxu/desk/file-ttttt.jpg"
req.add_header('User-Agent','Mozilla/5.0 (Windows NT 6.3; WOW64; rv:51.0) Gecko/20100101 Firefox/51.0')
response = urllib.request.urlopen(url)
html = response.read()
with open(file, 'wb') as f:
   f.write(html)

网上的方法

import os
os.makedirs('./image/', exist_ok=True)
IMAGE_URL = "http://image.nationalgeographic.com.cn/2017/1122/20171122113404332.jpg"
 
def urllib_download():
  from urllib.request import urlretrieve
  urlretrieve(IMAGE_URL, './image/img1.png')   
 
def request_download():
  import requests
  r = requests.get(IMAGE_URL)
  with open('./image/img2.png', 'wb') as f:
    f.write(r.content)           
 
def chunk_download():
  import requests
  r = requests.get(IMAGE_URL, stream=True)  
  with open('./image/img3.png', 'wb') as f:
    for chunk in r.iter_content(chunk_size=32):
      f.write(chunk)

整理简单的下载图片

import urllib
from  urllib import request
import re

response = request.urlopen('https://cn.bing.com/')
html = response.read()
ht = html.decode()
pattern = r'bgLink(.*?\.jpg)'
compile_re = re.compile(pattern)

hh = compile_re.findall(ht)
url = hh[0].split('/')[1]

download = 'https://cn.bing.com/' + url
urllib.request.urlretrieve(download,filename="/home/baixiaoxu/desk/download.jpg")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用动态变量名的方法
May 06 Python
Python中使用装饰器和元编程实现结构体类实例
Jan 28 Python
Python os模块中的isfile()和isdir()函数均返回false问题解决方法
Feb 04 Python
Python中对元组和列表按条件进行排序的方法示例
Nov 10 Python
Django如何自定义分页
Sep 25 Python
安装docker-compose的两种最简方法
Jul 30 Python
python中的split()函数和os.path.split()函数使用详解
Dec 21 Python
Python有参函数使用代码实例
Jan 06 Python
解决django FileFIELD的编码问题
Mar 30 Python
pandas处理csv文件的方法步骤
Oct 16 Python
Python中相见恨晚的技巧
Apr 13 Python
python生成可执行exe控制Microsip自动填写号码并拨打功能
Jun 21 Python
python序列化与数据持久化实例详解
Dec 20 #Python
爬虫代理池Python3WebSpider源代码测试过程解析
Dec 20 #Python
python3的UnicodeDecodeError解决方法
Dec 20 #Python
基于python调用psutil模块过程解析
Dec 20 #Python
python如何使用jt400.jar包代码实例
Dec 20 #Python
基于python使用tibco ems代码实例
Dec 20 #Python
使用python实现数组、链表、队列、栈的方法
Dec 20 #Python
You might like
php strftime函数获取日期时间(switch用法)
2018/05/16 PHP
PHP getName()函数讲解
2019/02/03 PHP
jQuery页面滚动浮动层智能定位实例代码
2011/08/23 Javascript
javascript获取隐藏元素(display:none)的高度和宽度的方法
2014/06/06 Javascript
教你如何自定义百度分享插件以及bshare分享插件的分享按钮
2014/06/20 Javascript
jQuery不使用插件及swf实现无刷新文件上传
2014/12/08 Javascript
Javascript 运动中Offset的bug解决方案
2014/12/24 Javascript
jQuery表单域属性过滤器用法分析
2015/02/10 Javascript
谈谈jQuery Ajax用法详解
2015/11/27 Javascript
javascript中的深复制详解及实例分析
2016/12/29 Javascript
深入理解NodeJS 多进程和集群
2018/10/17 NodeJs
Vue中computed、methods与watch的区别总结
2019/04/10 Javascript
JS如何判断对象是否包含某个属性
2020/08/29 Javascript
[04:36]DOTA2国际邀请赛 ti3精彩集锦
2013/08/19 DOTA
[46:42]DOTA2-DPC中国联赛正赛 Aster vs Magma BO3 第二场 3月5日
2021/03/11 DOTA
python如何实现远程控制电脑(结合微信)
2015/12/21 Python
在Python的一段程序中如何使用多次事件循环详解
2017/09/07 Python
flask框架使用orm连接数据库的方法示例
2018/07/16 Python
python 把列表转化为字符串的方法
2018/10/23 Python
在Python中实现替换字符串中的子串的示例
2018/10/31 Python
python__name__原理及用法详解
2019/11/02 Python
pygame库实现移动底座弹球小游戏
2020/04/14 Python
Django框架教程之中间件MiddleWare浅析
2019/12/29 Python
利用Opencv实现图片的油画特效实例
2021/02/28 Python
详解CSS3中常用的样式【基本文本和字体样式】
2020/10/20 HTML / CSS
html5/css3响应式页面开发总结
2018/10/16 HTML / CSS
大学生水文观测实习自我鉴定
2013/09/29 职场文书
行政专员工作职责
2013/12/22 职场文书
会计工作心得体会
2014/01/13 职场文书
2014离婚协议书范文(3篇)
2014/11/29 职场文书
社会治安综合治理责任书
2015/01/29 职场文书
2015年护士工作总结范文
2015/03/31 职场文书
幼师辞职信范文大全
2015/05/12 职场文书
MySql新手入门的基本操作汇总
2021/05/13 MySQL
聊聊Lombok中的@Builder注解使用教程
2021/11/17 Java/Android
vue-cli3.x配置全局的scss的时候报错问题及解决
2022/04/30 Vue.js