利用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 相关文章推荐
Windows下PyMongo下载及安装教程
Apr 27 Python
python函数式编程学习之yield表达式形式详解
Mar 25 Python
Python对CSV、Excel、txt、dat文件的处理
Sep 18 Python
Pycharm以root权限运行脚本的方法
Jan 19 Python
Python操作配置文件ini的三种方法讲解
Feb 22 Python
解决python中使用PYQT时中文乱码问题
Jun 17 Python
Python 二叉树的层序建立与三种遍历实现详解
Jul 29 Python
python匿名函数用法实例分析
Aug 03 Python
完美解决pycharm导入自己写的py文件爆红问题
Feb 12 Python
Keras使用ImageNet上预训练的模型方式
May 23 Python
Tensorflow tensor 数学运算和逻辑运算方式
Jun 30 Python
详解Pandas 处理缺失值指令大全
Jul 30 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
第十三节 对象串行化 [13]
2006/10/09 PHP
经典的PHPer为什么被认为是草根?
2007/04/02 PHP
PHPStrom中实用的功能和快捷键大全
2015/09/23 PHP
php删除数组中重复元素的方法
2015/12/22 PHP
php写入txt乱码的解决方法
2019/09/17 PHP
TP - 比RBAC更好的权限认证方式(Auth类认证)
2021/03/09 PHP
JavaScript 弹出窗体点击按钮返回选择数据的实现
2010/04/01 Javascript
浅谈javascript实现八大排序
2015/04/27 Javascript
jQuery通过Ajax返回JSON数据
2015/04/28 Javascript
简单理解Vue条件渲染
2016/12/03 Javascript
jQuery插件FusionCharts实现的MSBar2D图效果示例【附demo源码】
2017/03/24 jQuery
ES6入门教程之let和const命令详解
2017/05/17 Javascript
sublime text配置node.js调试(图文教程)
2017/11/23 Javascript
基于leaflet.js实现修改地图主题样式的流程分析
2020/05/15 Javascript
vue根据条件不同显示不同按钮的操作
2020/08/04 Javascript
python模拟登陆阿里妈妈生成商品推广链接
2014/04/03 Python
python中反射用法实例
2015/03/27 Python
完美解决python中ndarray 默认用科学计数法显示的问题
2018/07/14 Python
Python通过递归获取目录下指定文件代码实例
2019/11/07 Python
在Python中预先初始化列表内容和长度的实现
2019/11/28 Python
python实现按关键字筛选日志文件
2019/12/24 Python
Flask缓存静态文件的具体方法
2020/08/02 Python
css3选择器基本介绍
2014/12/15 HTML / CSS
THE OUTNET英国官网:国际设计师品牌折扣网站
2016/08/14 全球购物
friso美素佳儿官方海外旗舰店:荷兰原产原罐
2017/07/03 全球购物
新英格兰最大的特色礼品连锁店:The Paper Store
2018/07/23 全球购物
以设计师精品品质提供快速时尚:Mostata
2019/05/10 全球购物
给排水专业应届生求职信
2013/10/12 职场文书
预备党员思想汇报
2014/01/08 职场文书
中学教师教育感言
2014/02/21 职场文书
旅游管理专业大学生职业规划书
2014/02/27 职场文书
青年志愿者活动方案
2014/08/17 职场文书
预备党员思想汇报1000字
2014/10/07 职场文书
广告文案的撰写技巧(实用干货)
2019/08/23 职场文书
面试必问:圣杯布局和双飞翼布局的区别
2021/05/13 HTML / CSS
python中%格式表达式实例用法
2021/06/18 Python