正则表达式运用之小爬虫

前端之家收集整理的这篇文章主要介绍了正则表达式运用之小爬虫前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

获取某网站上的gif图片

# -*- coding:utf-8 -*-
#小爬虫
import re
import urllib

def getHtml(url):#该函数获取网页的HTML代码
    page = urllib.urlopen(url) #创建该网页的对象
    html = page.read() #读取网页的html源代码
    return html #返回源代码

def getImag(html):#该函数爬取图片
    reg = r'src="(http.*?\.gif)"' #根据该网页中图片的地址规律编写正则表达式,把所有图片的地址过滤出来
    imgre = re.compile(reg) #编译生成对象,方便使用
    imglist = re.findall(imgre,html) #调用imgre获取所有图片的地址
    #print imglist
    x = 0
    for imgurl in imglist: #依次根据列表里的每一个地址下载图片,并以gif的后缀保存
        urllib.urlretrieve(imgurl,'%s.gif' % x)
        x += 1


html = getHtml("http://www.hanzhong123.com/forum/thread-10208862-1-1.html")
getImag(html) #文件保存在该执行文件的同一目录下

结果:

猜你在找的正则表达式相关文章