利用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 BeautifulSoup中文乱码问题的2种解决方法
Apr 22 Python
python机器学习案例教程——K最近邻算法的实现
Dec 28 Python
python入门前的第一课 python怎样入门
Mar 06 Python
Python实现统计给定字符串中重复模式最高子串功能示例
May 16 Python
Python将list中的string批量转化成int/float的方法
Jun 26 Python
python使用pymongo操作mongo的完整步骤
Apr 13 Python
Python将string转换到float的实例方法
Jul 29 Python
PyQT5 emit 和 connect的用法详解
Dec 13 Python
Django之全局使用request.user.username的实例详解
May 14 Python
Python通过fnmatch模块实现文件名匹配
Sep 30 Python
python爬虫selenium模块详解
Mar 30 Python
 Python 中 logging 模块使用详情
Mar 03 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
vBulletin HACK----关于排版的两个HACK
2006/10/09 PHP
php目录管理函数小结
2008/09/10 PHP
PHP实现登录搜狐广告获取广告联盟数据的方法【附demo源码】
2016/10/14 PHP
php foreach如何跳出两层循环(详解)
2016/11/05 PHP
Aptana调试javascript图解教程
2009/11/30 Javascript
对于Form表单reset方法的新认识
2014/03/05 Javascript
nuxt框架中路由鉴权之Koa和Session的用法
2018/05/09 Javascript
JS实现十分钟倒计时代码实例
2018/10/18 Javascript
用Nodejs实现在终端中炒股的实现
2020/10/18 NodeJs
JS实现炫酷轮播图
2020/11/15 Javascript
Python实现子类调用父类的方法
2014/11/10 Python
使用url_helper简化Python中Django框架的url配置教程
2015/05/30 Python
python subprocess 杀掉全部派生的子进程方法
2017/01/16 Python
Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
2017/08/31 Python
django 常用orm操作详解
2017/09/13 Python
Python3利用SMTP协议发送E-mail电子邮件的方法
2017/09/30 Python
Python实现繁体中文与简体中文相互转换的方法示例
2018/12/18 Python
pycharm修改界面主题颜色的方法
2019/01/17 Python
pycharm修改文件的默认打开方式的步骤
2019/07/29 Python
selenium+PhantomJS爬取豆瓣读书
2019/08/26 Python
Python基础之函数原理与应用实例详解
2020/01/03 Python
Django admin 实现search_fields精确查询实例
2020/03/30 Python
IE下实现类似CSS3 text-shadow文字阴影的几种方法
2011/05/11 HTML / CSS
英国高街品牌:Miss Selfridge(塞尔弗里奇小姐)
2016/09/21 全球购物
L’Artisan Parfumeur官网:法国香水品牌
2020/08/11 全球购物
设计模式的基本要素是什么
2014/04/21 面试题
《蒲公英》教学反思
2014/02/28 职场文书
学校安全生产月活动总结
2014/07/05 职场文书
环境日宣传活动总结
2014/07/09 职场文书
运动会报道稿300字
2014/10/02 职场文书
校运会广播稿
2015/08/19 职场文书
护士工作心得体会
2016/01/25 职场文书
《青山不老》教学反思
2016/02/22 职场文书
会计专业自荐信范文
2019/05/22 职场文书
实战Python爬虫爬取酷我音乐
2022/04/11 Python
muduo TcpServer模块源码分析
2022/04/26 Redis