python制作花瓣网美女图片爬虫


Posted in Python onOctober 28, 2015

花瓣图片的加载使用了延迟加载的技术,源代码只能下载20多张图片,修改后基本能下载所有的了,只是速度有点慢,后面再优化下

import urllib, urllib2, re, sys, os,requests
path=r"C:\wqa\beautify"
url = 'http://huaban.com/favorite/beauty'
#http://huaban.com/explore/zhongwenlogo/?ig1un9tq&max=327773629&limit=20&wfl=1
i_headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36"}
count=0

def urlHandle(url):
  req = urllib2.Request(url, headers=i_headers)
  html = urllib2.urlopen(req).read()
  reg = re.compile(r'"pin_id":(\d+),.+?"file":{"farm":"farm1", "bucket":"hbimg",.+?"key":"(.*?)",.+?"type":"image/(.*?)"', re.S)
  groups = re.findall(reg, html)
  return groups

def imgHandle(groups):
  if groups:
    for att in groups:  
      pin_id = att[0]
      att_url = att[1] + '_fw236'
      img_type = att[2]
      img_url = 'http://img.hb.aicdn.com/' + att_url

      r = requests.get(img_url)
      with open(path + att_url + '.' + img_type, 'wb') as fd:
        for chunk in r.iter_content():
          fd.write(chunk)

groups = urlHandle(url)
imgHandle(groups)

while(groups):
  count+=1
  print count
  pin_id = groups[-1][0]
  print pin_id
  urltemp = url+'/?max=' + str(pin_id) + '&limit=' + str(20) + '&wfl=1'
  print(urltemp)
  groups = urlHandle(urltemp)
  #print groups
  imgHandle(groups)
Python 相关文章推荐
Python基于matplotlib实现绘制三维图形功能示例
Jan 18 Python
对Python 3.2 迭代器的next函数实例讲解
Oct 18 Python
python 自定义异常和异常捕捉的方法
Oct 18 Python
python ipset管理 增删白名单的方法
Jan 14 Python
python实现微信防撤回神器
Apr 29 Python
Python 异步协程函数原理及实例详解
Nov 13 Python
numpy:找到指定元素的索引示例
Nov 26 Python
python的faker库用法
Nov 28 Python
Pytest mark使用实例及原理解析
Feb 22 Python
用python开发一款操作MySQL的小工具
May 12 Python
pytorch 实现多个Dataloader同时训练
May 29 Python
python实现手机推送 代码也就10行左右
Apr 12 Python
python制作最美应用的爬虫
Oct 28 #Python
python使用wmi模块获取windows下的系统信息 监控系统
Oct 27 #Python
详解JavaScript编程中的window与window.screen对象
Oct 26 #Python
深入讲解Python中的迭代器和生成器
Oct 26 #Python
Windows下使Python2.x版本的解释器与3.x共存的方法
Oct 25 #Python
解析Python编程中的包结构
Oct 25 #Python
Python实现获取域名所用服务器的真实IP
Oct 25 #Python
You might like
php加密解密函数authcode的用法详细解析
2013/10/28 PHP
smarty高级特性之对象的使用方法
2015/12/25 PHP
PHP实现的DES加密解密实例代码
2016/04/06 PHP
PHP高并发和大流量解决方案整理
2019/12/24 PHP
JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合
2010/01/12 Javascript
js focus不起作用的解决方法(主要是因为dom元素是否加载完成)
2010/11/05 Javascript
jquery each()源代码
2011/02/14 Javascript
js左右弹性滚动对联广告代码分享
2014/02/19 Javascript
JavaScript实现的浮动层框架用法实例分析
2015/10/10 Javascript
JS中页面与页面之间超链接跳转中文乱码问题的解决办法
2016/12/15 Javascript
详解Vue2中组件间通信的解决全方案
2017/07/28 Javascript
vue+element实现批量删除功能的示例
2018/02/28 Javascript
实例详解ztree在vue项目中使用并且带有搜索功能
2018/08/24 Javascript
详解如何构建一个Angular6的第三方npm包
2018/09/07 Javascript
使用RN Animated做一个“添加购物车”动画的方法
2018/09/12 Javascript
react native 原生模块桥接的简单说明小结
2019/02/26 Javascript
javascript实现点击产生随机图形
2021/01/25 Javascript
[51:53]完美世界DOTA2联赛循环赛 LBZS vs DM BO2第二场 11.01
2020/11/02 DOTA
跟老齐学Python之玩转字符串(2)
2014/09/14 Python
使用python 和 lint 删除项目无用资源的方法
2017/12/20 Python
使用Python搭建虚拟环境的配置方法
2018/02/28 Python
Pandas 对Dataframe结构排序的实现方法
2018/04/10 Python
PyQt5每天必学之QSplitter实现窗口分隔
2018/04/19 Python
深入了解Python枚举类型的相关知识
2019/07/09 Python
解决keras GAN训练是loss不发生变化,accuracy一直为0.5的问题
2020/07/02 Python
python使用Word2Vec进行情感分析解析
2020/07/31 Python
python获取整个网页源码的方法
2020/08/03 Python
什么是CSS3 HSLA色彩模式?HSLA模拟渐变色条
2016/04/26 HTML / CSS
EVE LOM英国官网:全世界最好的洁面膏
2017/10/30 全球购物
餐饮业的创业计划书范文
2013/12/26 职场文书
共产党员公开承诺书范文
2014/03/28 职场文书
乡党委干部党的群众路线教育实践活动个人对照检查材料思想汇报
2014/10/01 职场文书
2014年班务工作总结
2014/12/02 职场文书
预备党员介绍人意见
2015/06/01 职场文书
2015年度女工工作总结
2015/10/22 职场文书
教你怎么用python爬取爱奇艺热门电影
2021/05/20 Python