利用Python2下载单张图片与爬取网页图片实例代码


Posted in Python onDecember 25, 2017

前言

一直想好好学习一下Python爬虫,之前断断续续的把Python基础学了一下,悲剧的是学的没有忘的快。只能再次拿出来滤了一遍,趁热打铁,通过实例来实践下,下面这篇文章主要介绍了关于Python2下载单张图片与爬取网页的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

一、需求分析

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

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

二、准备工作

1、开发系统:win7 64位。

2、开发环境:python2.7。

3、开发工具:PyCharm。

4、浏览器:Chrome。

三、操作步骤

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

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

利用Python2下载单张图片与爬取网页图片实例代码

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

利用Python2下载单张图片与爬取网页图片实例代码

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()
#方法二
res2 = urllib.urlretrieve(url , 'e:\dlimg\pic3.jpg')

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

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

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

利用Python2下载单张图片与爬取网页图片实例代码

b3、编写代码。

# -*- coding: utf-8 -*-
import requests
import urllib
from bs4 import BeautifulSoup
url = 'http://www.wmpic.me/tupian/qingxin'
res = requests.get(url)
#使用BeautifulSoup解析网页
soup = BeautifulSoup(res.text , 'html.parser')
#通过标签选择器定位到图片位置(与css选择器差不多)
pic_list = soup.select('.item_box .post a img')
i = 0
for img_url in pic_list:
 #获取每个img标签的src属性
 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

C.运行结果(红色框中pic2.jpg和pic3.jpg是A步骤运行结果,其余以downloadpic_*.jpg命名的图片是步骤B的运行结果)

利用Python2下载单张图片与爬取网页图片实例代码

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python远程登录代码
Apr 29 Python
理解Python中函数的参数
Apr 27 Python
Python的pycurl包用法简介
Nov 13 Python
python字典DICT类型合并详解
Aug 17 Python
python爬虫之urllib库常用方法用法总结大全
Nov 14 Python
Python计算一个点到所有点的欧式距离实现方法
Jul 04 Python
Django基础知识 URL路由系统详解
Jul 18 Python
python try except返回异常的信息字符串代码实例
Aug 15 Python
Python使用Pandas读写Excel实例解析
Nov 19 Python
Python中实现输入超时及如何通过变量获取变量名
Jan 18 Python
sklearn线性逻辑回归和非线性逻辑回归的实现
Jun 09 Python
No module named ‘win32gui‘ 的解决方法(踩坑之旅)
Feb 18 Python
Python实现生成随机数据插入mysql数据库的方法
Dec 25 #Python
python数据抓取分析的示例代码(python + mongodb)
Dec 25 #Python
Python实现生成随机日期字符串的方法示例
Dec 25 #Python
浅谈Python NLP入门教程
Dec 25 #Python
Python图形绘制操作之正弦曲线实现方法分析
Dec 25 #Python
关于Django显示时间你应该知道的一些问题
Dec 25 #Python
今天 平安夜 Python 送你一顶圣诞帽 @微信官方
Dec 25 #Python
You might like
CI(CodeIgniter)框架配置
2014/06/10 PHP
php支付宝接口用法分析
2015/01/04 PHP
理解Javascript_03_javascript全局观
2010/10/11 Javascript
来自国外的14个图片放大编辑的jQuery插件整理
2010/10/20 Javascript
Javascript图像处理—平滑处理实现原理
2012/12/28 Javascript
node.js中的path.resolve方法使用说明
2014/12/08 Javascript
深入理解JavaScript系列(48):对象创建模式(下篇)
2015/03/04 Javascript
jQuery表单验证功能实例
2015/08/28 Javascript
理解JavaScript中worker事件api
2015/12/25 Javascript
Angularjs 手写日历的实现代码(不用插件)
2017/10/18 Javascript
AngularJs ng-change事件/指令的用法小结
2017/11/01 Javascript
Nodejs中的JWT和Session的使用
2018/08/21 NodeJs
Vue和React组件之间的传值方式详解
2019/01/31 Javascript
nodejs制作小爬虫功能示例
2020/02/24 NodeJs
详解JavaScript中的链式调用
2020/11/27 Javascript
[00:12]DAC SOLO赛卫冕冠军 VG.Paparazi灬展现SOLO技巧
2018/04/06 DOTA
简介Python的collections模块中defaultdict类型的用法
2016/07/07 Python
详解Python 切片语法
2019/06/10 Python
python基于socket实现的UDP及TCP通讯功能示例
2019/11/01 Python
Python中的四种交换数值的方法解析
2019/11/18 Python
Tensorflow读取并输出已保存模型的权重数值方式
2020/01/04 Python
Python连接SQLite数据库并进行增册改查操作方法详解
2020/02/18 Python
解决Opencv+Python cv2.imshow闪退问题
2020/04/24 Python
python多进程使用函数封装实例
2020/05/02 Python
美国婚礼和派对礼品网站:Kate Aspen(新娘送礼会、迎婴派对)
2018/03/28 全球购物
商场总经理岗位职责
2014/02/03 职场文书
艺校音乐专业自我鉴定范文
2014/03/01 职场文书
党员干部一句话承诺
2014/05/30 职场文书
机械工程及其自动化专业求职信
2014/08/08 职场文书
兼职安全员岗位职责
2015/02/15 职场文书
党员个人自我评价
2015/03/03 职场文书
全国法制宣传日活动总结
2015/05/05 职场文书
2015年人民调解工作总结
2015/05/18 职场文书
文化苦旅读书笔记
2015/06/29 职场文书
超市店长竞聘书
2015/09/15 职场文书
导游词之宁夏贺兰山岩画
2019/11/08 职场文书