python 批量下载网页里的图片
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 批量下载网页里的图片相关的知识,希望对你有一定的参考价值。
python 3.*
import requests
import sys,re
#设置提取图片url 的正则表达式
imgre = re.compile(r"<img id=\"imgis\" src=‘(.*?)‘")
#存放找到的 图片url的列表
all_img_urls = []
#图片下载后存放位置
save_path = r‘/root‘
#获取指定网页中的图片url
def get_img_url(tmpurl,tmpre,allimgurl,timeout=10):
headers = {‘User-Agent‘: ‘Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36‘}
link = requests.get(tmpurl,headers=headers,timeout = timeout)
content = link.text
retsults = tmpre.findall(content)
for i in retsults:
allimgurl.append(i)
#对图片url进行下载保存
def save_img(tmpurl,tmppath,timeout=10):
headers = {‘User-Agent‘: ‘Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36‘}
ret = requests.get(tmpurl,headers=headers,timeout=timeout)
img = ret.content
filename = ‘{}/{}‘.format(tmppath,tmpurl.split(‘/‘)[-1])
with open(filename,‘wb‘) as f:
f.write(img)
if name == ‘main‘:
urls = [‘http://www.ivsky.com/bizhi/death_note_v17111/pic_{}.html#al_tit‘.format(385791+x) for x in range(10)]
try:
for url in urls:
imgurls = get_img_url(url, imgre, all_img_urls)
except Exception as e:
print(e)
for img in all_img_urls:
try:
save_img(img,save_path)
except Exception as e:
print(e)
以上是关于python 批量下载网页里的图片的主要内容,如果未能解决你的问题,请参考以下文章
Python练习册 第 0013 题: 用 Python 写一个爬图片的程序,爬 这个链接里的日本妹子图片 :-),(http://tieba.baidu.com/p/2166231880)(代码片段