webtet 发表于 2018-8-11 11:54:01

使用python编写简单网络爬虫(一)

#coding=utf-8  
# 导入urllib和re模块
  
import urllib
  
import re
  

  
# 定义获取百度图库URL的类;
  
class GetHtml:
  
    def __init__(self,url):
  
      self.url = url
  
    def getHtml(self):
  
      page = urllib.urlopen(self.url)
  
      html = page.read()
  
      return html
  

  
# 定义处理GetHtml类getHtml返回值(百度图库中美女的图片的链接地址)的类;
  
# 该类主要实现图片链接地址的提取和相应图片的下载(下载后的图片直接保存在本地);
  
class GetImg:
  
    def __init__(self,html):
  
      self.html = html
  
    def getImg(self):
  
      reg = r'"thumbLargeUrl" : "(.+?\.jpg)"'
  
      imgre = re.compile(reg,re.S|re.M)
  
      imglist = re.findall(imgre,self.html)
  
      # print imglist
  
      x = 1
  
      for imgurl in imglist:
  
            urllib.urlretrieve(imgurl,'%s.jpg' % x)
  
            y = x+1
  
            print '第%s张图片下载完成,正在下载第%s张,请稍后……' %(x,y)
  
            x+=1
  
      x-=1
  
      print '--------本次下载完成,共下载图片%s张---------' %x
  

  
# 定义程序的主入口
  
if __name__== '__main__':
  
    url = "http://image.baidu.com/channel?c=%E7%BE%8E%E5%A5%B3#%E7%BE%8E%E5%A5%B3"
  
    test = GetHtml(url)
  
    p = test.getHtml()
  
    m = GetImg(p)
  
    m.getImg()
页: [1]
查看完整版本: 使用python编写简单网络爬虫(一)