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

yipeiwu_com7年前Python基础

这篇文章主要介绍了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 = "/zb_users/upload/202003/wfxvl5bk5bi.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+matplotlib绘制简单的海豚(顶点和节点的操作)

python+matplotlib绘制简单的海豚(顶点和节点的操作)

海豚 本文例子主要展示了如何使用补丁、路径和转换类绘制和操作给定的顶点和节点的形状。 测试可用。 import matplotlib.cm as cm import matplotl...

简单介绍Python中的readline()方法的使用

 readline()方法从文件中读取一整行。尾部的换行符保持在字符串中。如果大小参数且非负,那么一个最大字节数,包括结尾的换行和不完整的行可能会返回。 遇到EOF时立即返回一...

Python正则匹配判断手机号是否合法的方法

Python正则匹配判断手机号是否合法的方法

正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),是计算机科学的一...

使用Python中的reduce()函数求积的实例

使用Python中的reduce()函数求积的实例

编写一个prod()函数,可以接受一个list并利用reduce()求积。 from functools import reduce def prod(x,y): return x...

Python中线程的MQ消息队列实现以及消息队列的优点解析

“消息队列”是在消息的传输过程中保存消息的容器。消息队列管理器在将消息从它的源中继到它的目标时充当中间人。队列的主要目的是提供路由并保证消息的传递;如果发送消息时接收者不可用,消息队列会...