香港云主机最佳企业级服务商!

ADSL拨号VPS包含了中国大陆(联通,移动,电信,)

中国香港,国外拨号VPS。

当前位置:云主机 > python >

电信ADSL拨号VPS
联通ADSL拨号VPS
移动ADSL拨号VPS

python妹子图简单爬虫实例


时间:2021-12-08 14:53 作者:admin


本文实例讲述了python/' target='_blank'>python妹子图简单爬虫实现方法。分享给大家供大家参考。具体如下:

#!/usr/bin/env Python#coding: utf-8import urllibimport urllib2import osimport reimport sys#显示下载进度def schedule(a,b,c):  '''''  a:已经下载的数据块  b:数据块的大小  c:远程文件的大小  '''  per = 100.0 * a * b / c  if per > 100 :    per = 100  print '%.2f%%' % per#获取html源码def getHtml(url):  page = urllib.urlopen(url)  html = page.read()  return html#下载图片def downloadImg(html, num, foldername):  picpath = '%s' % (foldername) #下载到的本地目录  if not os.path.exists(picpath): #路径不存在时创建一个    os.makedirs(picpath)  target = picpath+'/%s.jpg' % num  myItems = re.findall('<p><a href="http:\/\/www.mzitu.com/.*?" ><img src="(.*?)" alt=".*?" /></a></p>',html,re.S)  print 'Downloading image to location: ' + target  urllib.urlretrieve(myItems[0], target, schedule)#正则匹配分页def findPage(html):  myItems = re.findall('<span>(\d*)</span>', html, re.S)  return myItems.pop()#正则匹配列表def findList(html):  myItems = re.findall('<h2><a href="http://www.mzitu.com/(\d*)" title="(.*?)" target="_blank">.*?</a></h2>', html, re.S)  return myItems#总下载def totalDownload(modelUrl):  listHtml5 = getHtml(modelUrl)  listContent = findList(listHtml)  for list in listContent:    html = getHtml('http://www.mzitu.com/' + str(list[0]))    totalNum = findPage(html)    for num in range(1, int(totalNum)+1):      if num == 1:        url = 'http://www.mzitu.com/' + str(list[0])        html5 = getHtml(url)        downloadImg(html5, str(num), str(list[1]))      else:        url = 'http://www.mzitu.com/' + str(list[0]) + '/'+str(num)        html5 = getHtml(url)        downloadImg(html5, str(num), str(list[1]))if __name__ == '__main__':  listHtml = getHtml('http://www.mzitu.com/model')  #这是其中一个模块的url,可以添加不同的模块url从而达到整站爬取。  for model in range(1, int(findPage(listHtml))+1):    if model == 1:      modelUrl = 'http://www.mzitu.com/model'      totalDownload(modelUrl)    else:      modelUrl = 'http://www.mzitu.com/model/page/' + str(model)      totalDownload(modelUrl)  print "Download has finished."

希望本文所述对大家的Python程序设计有所帮助。

(责任编辑:admin)






帮助中心
会员注册
找回密码
新闻中心
快捷通道
域名登录面板
虚机登录面板
云主机登录面板
关于我们
关于我们
联系我们
联系方式

售前咨询:17830004266(重庆移动)

企业QQ:383546523

《中华人民共和国工业和信息化部》 编号:ICP备00012341号

Copyright © 2002 -2018 香港云主机 版权所有
声明:香港云主机品牌标志、品牌吉祥物均已注册商标,版权所有,窃用必究

云官方微信

在线客服

  • 企业QQ: 点击这里给我发消息
  • 技术支持:383546523

  • 公司总台电话:17830004266(重庆移动)
  • 售前咨询热线:17830004266(重庆移动)