从"百度图片(http://image.baidu.com/)"的首页下载图片

# -*- coding: utf-8 -*-
import urllib
import re
import sys url = 'http://image.baidu.com/' # 获取URL的源代码
def get_html(url):
page = urllib.urlopen(url)
html = page.read()
return html # 下载图片到本地
def get_image():
pattern_image = re.compile('img src="(.+\.jpg)')
image_list = re.findall(pattern_image, get_html(url))
for image in image_list:
temp = []
temp = image.split('/')
filename = './image/' + temp[-1]
print '开始下载',image
try:
urllib.urlretrieve(image, filename, download)
except:
print "Unexpected error:", sys.exc_info()[0]
finally:
print '下载完成'
print '总共下载:',len(image_list),'张图片' # 展示下载进度
def download(a, b, c):
per = 100.0 * a * b / c
if per > 100 :
per = 100
print '%.2f%%' % per get_image()

运行结果:

开始下载 http://img0.bdstatic.com/img/image/shouye/sheying0601.jpg
0.00%
50.66%
100.00%
下载完成
开始下载 http://img0.bdstatic.com/img/image/shouye/bizhi0302.jpg
0.00%
71.50%
100.00%
下载完成
开始下载 http://img0.bdstatic.com/img/image/shouye/mingxing0601.jpg
0.00%
64.83%
100.00%
下载完成
开始下载 http://img0.bdstatic.com/img/image/shouye/chongwu0128.jpg
0.00%
82.68%
100.00%
下载完成
开始下载 http://img0.bdstatic.com/img/image/shouye/dongman0309.jpg
0.00%
65.25%
100.00%
下载完成
开始下载 http://img0.bdstatic.com/img/image/shouye/touxiang0601.jpg
0.00%
100.00%
下载完成
开始下载 http://img0.bdstatic.com/img/image/shouye/jianbihua0601.jpg
0.00%
100.00%
下载完成
开始下载 http://img0.bdstatic.com/img/image/shouye/qiche0313.jpg
0.00%
93.70%
100.00%
下载完成
开始下载 http://img0.bdstatic.com/img/image/shouye/qqpifu0601.jpg
0.00%
99.62%
100.00%
下载完成
开始下载 http://img0.bdstatic.com/img/image/shouye/duorou0601.jpg
0.00%
65.42%
100.00%
下载完成
总共下载: 10 张图片

下载到本地的图片:

Python爬虫之抓图的更多相关文章

  1. Python爬虫之路——简单网页抓图升级版(添加多线程支持)

    转载自我的博客:http://www.mylonly.com/archives/1418.html 经过两个晚上的奋斗.将上一篇文章介绍的爬虫略微改进了下(Python爬虫之路--简单网页抓图),主要 ...

  2. Python 爬虫模拟登陆知乎

    在之前写过一篇使用python爬虫爬取电影天堂资源的博客,重点是如何解析页面和提高爬虫的效率.由于电影天堂上的资源获取权限是所有人都一样的,所以不需要进行登录验证操作,写完那篇文章后又花了些时间研究了 ...

  3. python爬虫成长之路(一):抓取证券之星的股票数据

    获取数据是数据分析中必不可少的一部分,而网络爬虫是是获取数据的一个重要渠道之一.鉴于此,我拾起了Python这把利器,开启了网络爬虫之路. 本篇使用的版本为python3.5,意在抓取证券之星上当天所 ...

  4. python爬虫学习(7) —— 爬取你的AC代码

    上一篇文章中,我们介绍了python爬虫利器--requests,并且拿HDU做了小测试. 这篇文章,我们来爬取一下自己AC的代码. 1 确定ac代码对应的页面 如下图所示,我们一般情况可以通过该顺序 ...

  5. python爬虫学习(6) —— 神器 Requests

    Requests 是使用 Apache2 Licensed 许可证的 HTTP 库.用 Python 编写,真正的为人类着想. Python 标准库中的 urllib2 模块提供了你所需要的大多数 H ...

  6. 批量下载小说网站上的小说(python爬虫)

    随便说点什么 因为在学python,所有自然而然的就掉进了爬虫这个坑里,好吧,主要是因为我觉得爬虫比较酷,才入坑的. 想想看,你可以批量自动的采集互联网上海量的资料数据,是多么令人激动啊! 所以我就被 ...

  7. python 爬虫(二)

    python 爬虫 Advanced HTML Parsing 1. 通过属性查找标签:基本上在每一个网站上都有stylesheets,针对于不同的标签会有不同的css类于之向对应在我们看到的标签可能 ...

  8. Python 爬虫1——爬虫简述

    Python除了可以用来开发Python Web之后,其实还可以用来编写一些爬虫小工具,可能还有人不知道什么是爬虫的. 一.爬虫的定义: 爬虫——网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区 ...

  9. Python爬虫入门一之综述

    大家好哈,最近博主在学习Python,学习期间也遇到一些问题,获得了一些经验,在此将自己的学习系统地整理下来,如果大家有兴趣学习爬虫的话,可以将这些文章作为参考,也欢迎大家一共分享学习经验. Pyth ...

随机推荐

  1. 网路编程之socket与 socketserver、黏包

    socket与socketerver才是我们学习python中网络编程的重中之重在介绍他们两个之前我先介绍一些相关知识 一.socket 概念 咱们现在ois模型中找到socket所承担的角色 soc ...

  2. Java常用工具——java异常

    package com.imooc.exception; import java.util.Scanner; public class TryCatchDemo1 { public static vo ...

  3. Hadoop HDFS本地存储目录结构解析

    转自:https://blog.csdn.net/superman_xxx/article/details/51689398 HDFS metadata以树状结构存储整个HDFS上的文件和目录,以及相 ...

  4. websocket初体验

    (function (window) { var wsUri = "ws://echo.websocket.org:9150"; var output; MyWebSocket = ...

  5. Game on a Tree Gym - 102392F(树上最大匹配)

    思路: 本质是求一个树上的最大匹配能否覆盖所有的点. dfs遍历,用qian[]数组记录当前节点的子树内有几个没有匹配的点(初始化为-1因为可以匹配掉一个子树中未匹配的点),pipei[]数组记录当前 ...

  6. MapReduce(2): How does Mapper work

    In the previous post, we've illustrated how Hadoop MapReduce prepares input for Mappers. Long story ...

  7. 20190814 On Java8 第四章 运算符

    第四章 运算符 优先级 程序员经常都会忘记其他优先级规则,所以应该用括号明确规定运算顺序. 赋值 基本类型的赋值都是直接的,而不像对象,赋予的只是其内存的引用.举个例子,a = b ,如果 b 是基本 ...

  8. 什么是php工厂模式

    工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式.著名的Jive论坛 ,就大量使用了工厂模式,工厂模式在Java程序系统可以说是随处可见.今天我们就为大家介绍一下PHP中的 ...

  9. BZOJ 1912(树的直径+LCA)

    题面 传送门 分析 显然,如果不加边,每条边都要走2次,总答案为2(n-1) 考虑k=1的朴素情况: 加一条边(a,b),这条边和树上a->b的路径形成一个环,这个环上的边只需要走一遍,所以答案 ...

  10. Codeforces Round #574 (Div. 2) A~E Solution

    A. Drinks Choosing 有 $n$ 个人,每个人各有一种最喜欢的饮料,但是买饮料的时候只能同一种的两个两个买(两个一对) 学校只打算卖 $\left \lceil \frac{n}{2} ...