利用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设置检查点简单实现代码
Jul 01 Python
Python内置函数dir详解
Apr 14 Python
Python根据区号生成手机号码的方法
Jul 08 Python
简析Python的闭包和装饰器
Feb 26 Python
Java分治归并排序算法实例详解
Dec 12 Python
windows上安装python3教程以及环境变量配置详解
Jul 18 Python
pymysql 开启调试模式的实现
Sep 24 Python
wxPython之wx.DC绘制形状
Nov 19 Python
利用python实现冒泡排序算法实例代码
Dec 01 Python
对python中return与yield的区别详解
Mar 12 Python
Pycharm修改python路径过程图解
May 22 Python
Django视图类型总结
Feb 17 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
上海牌131型七灯四波段四喇叭一级收音机
2021/03/02 无线电
聊天室php&mysql(三)
2006/10/09 PHP
PHP curl 并发最佳实践代码分享
2012/09/05 PHP
php5.3 注意事项说明
2013/07/01 PHP
php简单操作mysql数据库的类
2015/04/16 PHP
thinkPHP导出csv文件及用表格输出excel的方法
2015/12/30 PHP
php图片合成方法(多张图片合成一张)
2017/11/25 PHP
IE下写xml文件的两种方式(fso/saveAs)
2013/08/05 Javascript
js设置cookie过期及清除浏览器对应名称的cookie
2013/10/24 Javascript
webapp框架AngularUI的demo改造之路
2014/12/21 Javascript
JavaScript取得WEB安全颜色列表的方法
2015/07/14 Javascript
如何用jQuery实现ASP.NET GridView折叠伸展效果
2015/09/26 Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
2016/12/28 Javascript
详解vue事件对象、冒泡、阻止默认行为
2017/03/20 Javascript
微信小程序排坑指南详解
2018/05/23 Javascript
Vuejs监听vuex中值的变化的方法示例
2018/12/02 Javascript
详解mpvue中小程序自定义导航组件开发指南
2019/02/11 Javascript
基于JS+HTML实现弹窗提示是否确认提交功能
2020/06/17 Javascript
Python3实现连接SQLite数据库的方法
2014/08/23 Python
python实现机器人行走效果
2018/01/29 Python
Python修改文件往指定行插入内容的实例
2019/01/30 Python
matplotlib.pyplot画图并导出保存的实例
2019/12/07 Python
SpringBoot首页设置解析(推荐)
2021/02/11 Python
使用Html5多媒体实现微信语音功能
2019/07/26 HTML / CSS
全球知名旅游社区巴西站点:TripAdvisor巴西
2016/07/21 全球购物
会计学财务管理专业个人的自我评价
2013/10/19 职场文书
大四本科生的自我评价
2013/12/30 职场文书
大学生写自荐信的技巧
2014/01/08 职场文书
优秀班干部事迹材料
2014/01/26 职场文书
个人求职信范文分享
2014/01/31 职场文书
大学军训感言800字
2014/02/27 职场文书
经销商年会策划方案
2014/05/29 职场文书
安全保卫工作竞聘材料
2014/08/25 职场文书
2015年科研工作总结范文
2015/05/13 职场文书
CSS使用伪类控制边框长度的方法
2022/01/18 HTML / CSS
教你使用Python获取QQ音乐某个歌手的歌单
2022/04/03 Python