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 相关文章推荐
windows下python模拟鼠标点击和键盘输示例
Feb 28 Python
从零学python系列之浅谈pickle模块封装和拆封数据对象的方法
May 23 Python
Flask入门教程实例:搭建一个静态博客
Mar 27 Python
Python实现代码统计工具(终极篇)
Jul 04 Python
python+selenium实现登录账户后自动点击的示例
Dec 22 Python
利用Python+Java调用Shell脚本时的死锁陷阱详解
Jan 24 Python
python入门前的第一课 python怎样入门
Mar 06 Python
Python3 pandas 操作列表实例详解
Sep 23 Python
使用pytorch搭建AlexNet操作(微调预训练模型及手动搭建)
Jan 18 Python
Django权限设置及验证方式
May 13 Python
python3处理word文档实例分析
Dec 01 Python
Python制作一个随机抽奖小工具的实现
Jul 07 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
《超神学院》霸气归来, 天使彦上演维多利亚的秘密
2020/03/02 国漫
什么是调频(FM)、调幅(AM)、短波(SW)、长波(LW)
2021/03/01 无线电
ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法
2014/10/29 PHP
深入讲解PHP的Yii框架中的属性(Property)
2016/03/18 PHP
yii2实现根据时间搜索的方法
2016/05/25 PHP
thinkphp5 + ajax 使用formdata提交数据(包括文件上传) 后台返回json完整实例
2020/03/02 PHP
javascript 日历提醒系统( 兼容所有浏览器 )
2009/04/07 Javascript
Javascript 事件流和事件绑定
2009/07/16 Javascript
jquery动态加载js三种方法实例
2013/08/03 Javascript
jQuery操作Select的Option上下移动及移除添加等等
2013/11/18 Javascript
瀑布流布局代码一例
2014/04/11 Javascript
node.js中的path.sep方法使用说明
2014/12/08 Javascript
node.js中的fs.read方法使用说明
2014/12/17 Javascript
对于jQuery性能的一些优化建议
2015/08/13 Javascript
JS弹出对话框实现方法(三种方式)
2015/12/18 Javascript
利用js查找数组中指定元素并返回该元素的所有索引示例
2017/03/29 Javascript
浅谈关于axios和session的一些事
2017/07/13 Javascript
[04:13]2014DOTA2国际邀请赛 专访DC目前形势不容乐观
2014/07/12 DOTA
[02:11]DOTA2上海特级锦标赛主赛事第二日RECAP
2016/03/04 DOTA
通过数据库对Django进行删除字段和删除模型的操作
2015/07/21 Python
Python 实现数据库更新脚本的生成方法
2017/07/09 Python
利用Python将每日一句定时推送至微信的实现方法
2018/08/13 Python
django admin后台添加导出excel功能示例代码
2019/05/15 Python
python爬虫库scrapy简单使用实例详解
2020/02/10 Python
Python3.7下安装pyqt5的方法步骤(图文)
2020/05/12 Python
基于python实现matlab filter函数过程详解
2020/06/08 Python
浅谈Django前端后端值传递问题
2020/07/15 Python
Python Serial串口基本操作(收发数据)
2020/11/06 Python
AmazeUI中各种的导航式菜单与解决方法
2020/08/19 HTML / CSS
西班牙Polo衫品牌:Polo Club
2020/08/09 全球购物
50道外企软件测试面试题
2014/08/18 面试题
sleep()方法和wait()方法的区别是什么
2012/11/17 面试题
财务担保书范文
2014/04/02 职场文书
2014年十一国庆向国旗敬礼寄语
2014/04/11 职场文书
redis限流的实际应用
2021/04/24 Redis
Python通过loop.run_in_executor执行同步代码 同步变为异步
2022/04/11 Python