__author__ = 'sus'

#urllib模块提供了读取Web页面数据的接口
import urllib
#re模块主要包含了正则表达式
import re
#定义一个getHtml()函数
def getHtml(url):
page = urllib.urlopen(url) #urllib.urlopen()方法用于打开一个URL地址
html = page.read() #read()方法用于读取URL上的数据
return html

def getImg(html):
reg = r'src="(.*?\.jpg)"' #正则表达式,得到图片地址
imgre = re.compile(reg) #re.compile() 可以把正则表达式编译成一个正则表达式对象.
imglist = re.findall(imgre,html)
#re.findall() 方法读取html 中包含 imgre(正则表达式)的数据
#把筛选的图片地址通过for循环遍历并保存到本地
#核心是urllib.urlretrieve()方法,直接将远程数据下载到本地,图片通过x依次递增命名
x = 0
for imgurl in imglist:
urllib.urlretrieve(imgurl,'C:\ATIEBA\%s.jpg' % x)
x+=1
print 'I have gotten %s pictures' %x
print 'Please be careful about sipder'

html = getHtml("http://tieba.baidu.com/p/4878382516")
print getImg(html)

spider_jpg的更多相关文章

随机推荐

  1. 今天谈谈流,什么是IO流?

    无标题 (5) :first-child { margin-top: 0; } blockquote > :last-child { margin-bottom: 0; } img { bord ...

  2. install intel c/c++ compiler

    通过在Intel官网上申请试用版本Intel® Parallel Studio XE Cluster Edition for Linux,会让你提交邮箱等信息,完成后会很快回复邮件,邮件会给出下载地址 ...

  3. php封装微信SDK

    <?phpclass JSSDK { private $appId = '你公众号的appid'; private $appSecret = '你公众号的appSecret'; public f ...

  4. C# 统计在线人数和总访问人数

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  5. Cheatsheet: 2016 04.01 ~ 04.30

    .NET String format Setting up Ubuntu for .NET Development ASP.​NET Core and Angular2 - Part 1 - Upda ...

  6. react+redux开发谷歌插件

    React Developer Tools Redux Dev Tools

  7. Maven将依赖的所有jar包打成一个jar

    有些特殊情况下,需要将多个jar包打包成一个jar文件.如果使用maven可以加入如下插件: <build> <plugins> <plugin> <arti ...

  8. C# 基础知识总结

    要学好C#,基础知识的重要性不言而喻,现将常用到的一些基础进行总结,总结如下: 1. 数据类型转换: 强制类型转换(Chart--> int):  char cr='A';   int i = ...

  9. away3D改造白皮书

    [多余的stage3D的考虑] 因为away3D为了支持stage本身可以有n个stage3D对象这个特性,在诸如MaterialPassBase.SubGeometry中,为Program3D.Ve ...

  10. Matrix

    记载: Matrix Matrix是Android 提供的一个矩阵工具类,位于"android.graphics.Matrix"包下,它本身不能对图像或View进行变换, 但它可以 ...