利用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基础入门详解(文件输入/输出 内建类型 字典操作使用方法)
Dec 08 Python
Python Web开发模板引擎优缺点总结
May 06 Python
python 示例分享---逻辑推理编程解决八皇后
Jul 20 Python
详解Python中的循环语句的用法
Apr 09 Python
python初学之用户登录的实现过程(实例讲解)
Dec 23 Python
python安装教程
Feb 28 Python
Python绘制KS曲线的实现方法
Aug 13 Python
基于python3抓取pinpoint应用信息入库
Jan 08 Python
PyQt5中向单元格添加控件的方法示例
Mar 24 Python
django-orm F对象的使用 按照两个字段的和,乘积排序实例
May 18 Python
如何用python 操作zookeeper
Dec 28 Python
TensorFlow的环境配置与安装方法
Feb 20 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
为IP查询添加GOOGLE地图功能的代码
2010/08/08 PHP
理解php原理的opcodes(操作码)
2010/10/26 PHP
php使用filter过滤器验证邮箱 ipv6地址 url验证
2013/12/25 PHP
有关于PHP中常见数据类型的汇总分享
2014/01/06 PHP
php中的ini配置原理详解
2014/10/14 PHP
支付宝接口开发集成支付环境小结
2015/03/17 PHP
PHP异常处理定义与使用方法分析
2017/07/25 PHP
Aster vs KG BO3 第三场2.19
2021/03/10 DOTA
Document 对象的常用方法
2009/07/31 Javascript
JavaScript去掉空格的方法集合
2010/12/28 Javascript
Javascript中Array用法实例分析
2015/06/13 Javascript
详解JavaScript编程中正则表达式的使用
2015/10/25 Javascript
jQuery-1.9.1源码分析系列(十)事件系统之事件包装
2015/11/20 Javascript
微信小程序 wx:key详细介绍
2016/10/28 Javascript
Bootstrap轮播图的使用和理解4
2016/12/14 Javascript
详解使用create-react-app快速构建React开发环境
2018/05/16 Javascript
手把手教你写一个微信小程序(推荐)
2018/10/17 Javascript
layui实现左侧菜单点击右侧内容区显示
2019/07/26 Javascript
vue实现折线图 可按时间查询
2020/08/21 Javascript
Python求两个文本文件以行为单位的交集、并集与差集的方法
2015/06/17 Python
使用Python的Django框架结合jQuery实现AJAX购物车页面
2016/04/11 Python
python爬取51job中hr的邮箱
2016/05/14 Python
Python递归函数特点及原理解析
2020/03/04 Python
关于Python错误重试方法总结
2021/01/03 Python
python中添加模块导入路径的方法
2021/02/03 Python
国际知名设计师时装商店:Coggles
2016/09/05 全球购物
英国手机壳购买网站:Case Hut
2019/04/11 全球购物
JBL加拿大官方商店:扬声器、耳机等
2020/10/23 全球购物
实习公司领导推荐函
2014/05/21 职场文书
篮球社团活动总结
2014/06/27 职场文书
质监局领导班子对照检查材料思想汇报
2014/09/27 职场文书
教师四风自我剖析材料
2014/09/30 职场文书
2015年五四青年节活动总结
2015/02/10 职场文书
2015年公司工作总结
2015/04/25 职场文书
2019年聘任书的写作格式及范文!
2019/07/03 职场文书
MYSQL 无法识别中文的永久解决方法
2021/06/03 MySQL