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基础教程之字典操作详解
Mar 25 Python
Python实现生成简单的Makefile文件代码示例
Mar 10 Python
编写Python脚本把sqlAlchemy对象转换成dict的教程
May 29 Python
举例讲解Python中的Null模式与桥接模式编程
Feb 02 Python
Python 使用os.remove删除文件夹时报错的解决方法
Jan 13 Python
Python中格式化format()方法详解
Apr 01 Python
python 移除字符串尾部的数字方法
Jul 17 Python
python自带tkinter库实现棋盘覆盖图形界面
Jul 17 Python
JupyterNotebook设置Python环境的方法步骤
Dec 03 Python
简述python Scrapy框架
Aug 17 Python
Python系统公网私网流量监控实现流程
Nov 23 Python
python多线程方法详解
Jan 18 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
模板引擎Smarty深入浅出介绍
2006/12/06 PHP
实用函数10
2007/11/08 PHP
php读取javascript设置的cookies的代码
2010/04/12 PHP
php中禁止单个IP与ip段访问的代码小结
2012/07/04 PHP
生成随机字符串和验证码的类的PHP实例
2013/12/24 PHP
jQuery中文入门指南,翻译加实例,jQuery的起点教程
2007/01/13 Javascript
javascript 命名空间以提高代码重用性
2008/11/13 Javascript
jquerydom对象的事件隐藏显示和对象数组示例
2013/12/10 Javascript
json的定义、标准格式及json字符串检验
2014/05/11 Javascript
NodeJS学习笔记之MongoDB模块
2015/01/13 NodeJs
浅谈JavaScript正则表达式分组匹配
2015/04/10 Javascript
非常漂亮的相册集 使用jquery制作相册集
2016/04/28 Javascript
node.js缺少mysql模块运行报错的解决方法
2016/11/13 Javascript
Mac下使用charles遇到的问题以及解决办法
2017/01/10 Javascript
原生js实现回复评论功能
2017/01/18 Javascript
引入JavaScript时alert弹出框显示中文乱码问题
2017/09/16 Javascript
Bootstrap Table实现定时刷新数据的方法
2018/08/13 Javascript
vue项目打包部署_nginx代理访问方法详解
2018/09/20 Javascript
微信开发之微信jssdk录音功能开发示例
2018/10/22 Javascript
layui实现根据table数据判断按钮显示情况的方法
2019/09/26 Javascript
JQuery复选框全选效果如何实现
2020/05/08 jQuery
python+appium+yaml移动端自动化测试框架实现详解
2020/11/24 Python
用60行代码实现Python自动抢微信红包
2021/02/04 Python
介绍Java的内部类
2012/10/27 面试题
abstract是什么意思
2012/02/12 面试题
青年创业培训欢迎词
2014/01/10 职场文书
2014年社区学雷锋活动总结
2014/03/09 职场文书
幼儿园家长安全责任书
2014/07/22 职场文书
作风整顿剖析材料
2014/09/30 职场文书
党的群众路线教育实践活动领导班子整改方案
2014/10/25 职场文书
2015教师个人德育工作总结
2015/07/22 职场文书
环保建议书作文400字
2015/09/14 职场文书
《圆的周长》教学反思
2016/02/17 职场文书
Python自然语言处理之切分算法详解
2021/04/25 Python
只用50行Python代码爬取网络美女高清图片
2021/06/02 Python
交互式可视化js库gojs使用介绍及技巧
2022/02/18 Javascript