Python2下载单张图片和爬取网页图片

昨天用Python2爬取了一首歌的热评和评论总数,今天用Python2来下载图片。

一、需求分析

1、知道图片的url地址,将图片下载到本地。

2、知道网页地址,将图片列表中的图片全部下载到本地。

二、准备工作

1、开发系统:win7 64位。

2、开发环境:python2.7。

3、开发工具:PyCharm。

4、浏览器:Chrome。

三、操作步骤

A.知道图片的url地址,将图片下载到本地。

a1、打开Chrome,随意找到一个图片网站。

a2、打开开发者工具(f12键或者fn+f12键),选择第一张图片,可以看到它的src属性就是图片的地址,复制出来。

a3、编写代码。这里需要引用urllib库以及使用Python IO相关的知识。

# -*- coding:utf-8 -*

'''

知道图片地址,下载图片到本地

'''

import urllib

#图片url地址

url = 'http://p1.wmpic.me/article/2017/12/22/1513930326_ciDepIns_215x185.jpg'

#获取图片数据

res = urllib.urlopen(url).read()

#文件要保存的路径名和文件名

path = "e:\dlimg\pic2.jpg"

#使用io写入图片

f = open(path , "wb")

f.write(res)

f.close()

#方法二:使用urllib.urlretrieve()方法

res2 = urllib.urlretrieve(url , 'e:\dlimg\pic3.jpg')

运行结果:

B.知道网页地址,将图片列表中的图片全部下载到本地。

b1、还是以上面的网页为爬取对象,在该网页下,图片列表中有30张照片,获取每张图片的src属性值,再来下载即可。

b2、利用BeautifulSoup解析网页,利用标签选择器获取每张图片的src属性值。

b3、编写代码。

import requests

import urllib

from bs4 import BeautifulSoup

url = 'http://www.wmpic.me/tupian/qingxin'

res = requests.get(url)

soup = BeautifulSoup(res.text , 'html.parser')

pic_list = soup.select('.item_box .post a img')

i = 0

for img_url in pic_list:

url_list = img_url['src']

save_path = 'E:\dlimg\\'+'downloadpic_'+str(i)+'.jpg'

pic_file = urllib.urlopen(url_list).read()

f = open(save_path, "wb")

f.write(pic_file)

f.close()

i = i+1

运行结果在上面那张截图里面。

本文来自企鹅号 - 悦乐书媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏我和未来有约会

Silverlight初级教程-认识工作区

Silverlight初级教程 认识工作区 现在silverlight的教程也有不少了。正如之前所说我要以flasher的角度去开发silverlight。在...

3636
来自专栏QQ会员技术团队的专栏

一起脱去小程序的外套和内衣:微信小程序架构解析

微信小程序的公测掀起了学习小程序开发的浪潮,天生跨平台,即用即走、媲美原生体验、完善的文档、高效的开发框架,小程序给开发者带来了很多惊喜。通过这篇文章和大家一起...

5.6K3
来自专栏Coding01

推荐简约漂亮的小程序日历插件

好比 PHP 的 composer、前端的 npm,Java 的 jar包,小程序插件的出现,极大的方便了我们共享组件,减小开发量。

5912
来自专栏程序员互动联盟

【编程入门】互联网的本质技术

首先要知道网站访问大概是什么个过程: 假设你在浏览器地址栏输入这个问题的地址 http://www.zhihu.com/question/22689579 访问...

45611
来自专栏DeveWork

为WordPress 评论框添加HTML5 表单验证

WordPress 中最常用到的表单莫过于评论框了,但现在不少的WordPress 主题(包括WordPress官方的主题),其表单验证其实是借助javascr...

31510
来自专栏机器学习原理

爬虫篇(1)——从爬取练习题开始1 1.对python练习100例内容的爬取

前言: 介绍小例子,加深对爬虫的理解,主要用bs4完成 1 1.对python练习100例内容的爬取 页面分析 主页面: ? image.png ...

3547
来自专栏游戏杂谈

HTML5的Histroy API

比较典型的是GitHub,在点击代码文件夹和文件时,会发现它的url地址栏变换了、标题栏变化了、前进后退按钮也变化了(跟新开了一个新页面感觉一样),但体验起来很...

1433
来自专栏速成应用小程序开发平台

新手教程|速成应用教你如何制作搭建自己的微信小程序

微信小程序已经迈入了爆发阶段,很多中小企业和商户正在不断涌入这个市场。但是很多不懂技术不懂代码的小白却不知道去哪里制作微信小程序,现在就以可视化小程序开发工具「...

1.5K5
来自专栏FD的专栏

React 中引入 Angular 组件

为了在我的编辑器中使用 Angular,我用 Angular 编写了一个重命名功能。而为了使用它,我得再次使用一次 customEvent,而在这个微前端架构的...

963
来自专栏iOS Developer

微信小程序开发教程-从零开始(2)

1756

扫码关注云+社区