Python爬虫 网页图片

一 概述

  参考http://www.cnblogs.com/abelsu/p/4540711.html 弄了个Python捉取单一网页的图片,但是Python已经升到3+版本了。参考的已经失效,基本用不上。修改了下,重新实现网页图片捉取。

 

二 代码

  

#coding=utf-8

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

def getImg(html):
    reg = r'img.*? 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.request.urlretrieve(imgurl,'E:\Raumrot\%s.jpg' % x)
        x+=1
        print(imgurl)

html = getHtml("http://raumrot.com/photo-set-landing/")
getImg(html)

 

 

三 效果

 

 

 

posted on 2017-01-04 09:27  freeo  阅读(233)  评论(0编辑  收藏  举报