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实现用户登陆邮件通知的方法
Jul 09 Python
Python缩进和冒号详解
Jun 01 Python
Fabric 应用案例
Aug 28 Python
Python解惑之True和False详解
Apr 24 Python
Numpy数组的保存与读取方法
Apr 04 Python
Python RabbitMQ消息队列实现rpc
May 30 Python
通过Pandas读取大文件的实例
Jun 07 Python
python3解析库BeautifulSoup4的安装配置与基本用法
Jun 26 Python
Python输出\u编码将其转换成中文的实例
Dec 15 Python
python3.5安装python3-tk详解
Apr 26 Python
Python TestSuite生成测试报告过程解析
Jul 23 Python
Matplotlib中rcParams使用方法
Jan 05 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
分享最受欢迎的5款PHP框架
2014/11/27 PHP
javascript结合html5 canvas实现(可调画笔颜色/粗细/橡皮)的涂鸦板
2013/04/27 Javascript
深入理解Javascript作用域与变量提升
2013/12/09 Javascript
js charAt的使用示例
2014/02/18 Javascript
浅谈node.js中async异步编程
2015/10/22 Javascript
JavaScript中数组去除重复的三种方法
2016/04/22 Javascript
有关easyui-layout中的收缩层无法显示标题的解决办法
2016/05/10 Javascript
web 前端常用组件之Layer弹出层组件
2016/09/22 Javascript
React-router中结合webpack实现按需加载实例
2017/05/25 Javascript
VUEJS 2.0 子组件访问/调用父组件的实例
2018/02/10 Javascript
jQuery实现为动态添加的元素绑定事件实例分析
2018/09/07 jQuery
微信小程序 setData 对 data数据影响问题
2019/04/18 Javascript
js blob类型url的视频下载问题的解决
2019/11/29 Javascript
v-slot和slot、slot-scope之间相互替换实例
2020/09/04 Javascript
[26:52]LGD vs EG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python的类实例属性访问规则探讨
2015/01/30 Python
在Python的框架中为MySQL实现restful接口的教程
2015/04/08 Python
利用Python为iOS10生成图标和截屏
2016/09/24 Python
TensorFlow数据输入的方法示例
2018/06/19 Python
Python字符串通过'+'和join函数拼接新字符串的性能测试比较
2019/03/05 Python
Python configparser模块配置文件过程解析
2020/03/03 Python
Python经典五人分鱼实例讲解
2021/01/04 Python
一款纯css3实现的动画加载导航
2014/10/08 HTML / CSS
HTML5 Video/Audio播放本地文件示例介绍
2013/11/18 HTML / CSS
英国护肤品购物网站:Beauty Expert
2016/08/19 全球购物
盛大二次面试题
2016/11/18 面试题
化学教师教学反思
2014/01/17 职场文书
电子商务专业求职信
2014/03/08 职场文书
应届大专毕业生自我鉴定
2014/04/08 职场文书
护士节策划方案
2014/05/19 职场文书
社团活动总结模板
2014/06/30 职场文书
品牌转让协议书
2014/08/20 职场文书
维护民族团结演讲稿
2014/08/27 职场文书
群众路线教育实践活动剖析材料
2014/09/30 职场文书
Python字符串常规操作小结
2022/04/03 Python
python 闭包函数详细介绍
2022/04/19 Python