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通过递归遍历出集合中所有元素的方法
Feb 25 Python
浅谈python 四种数值类型(int,long,float,complex)
Jun 08 Python
windows10系统中安装python3.x+scrapy教程
Nov 08 Python
Python中的is和==比较两个对象的两种方法
Sep 06 Python
django项目搭建与Session使用详解
Oct 10 Python
如何运行.ipynb文件的图文讲解
Jun 27 Python
django-rest-framework 自定义swagger过程详解
Jul 18 Python
python获取Linux发行版名称
Aug 30 Python
如何将tensorflow训练好的模型移植到Android (MNIST手写数字识别)
Apr 22 Python
小 200 行 Python 代码制作一个换脸程序
May 12 Python
OpenCV-Python实现轮廓拟合
Jun 08 Python
opencv检测动态物体的实现
Jul 21 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
亚洲咖啡有什么?亚洲咖啡产地介绍 亚洲咖啡有什么特点?
2021/03/05 新手入门
一个程序下载的管理程序(四)
2006/10/09 PHP
用PHP和ACCESS写聊天室(一)
2006/10/09 PHP
实现在同一方法中获取当前方法中新赋值的session值解决方法
2014/06/26 PHP
详解PHP对数组的定义以及数组的创建方法
2015/11/27 PHP
PHP去除字符串最后一个字符的三种方法实例
2017/03/01 PHP
PHP大文件切割上传功能实例分析
2019/07/01 PHP
Dojo 学习笔记入门篇 First Dojo Example
2009/11/15 Javascript
jQuery插件开发基础简单介绍
2013/01/07 Javascript
仿新浪微博登陆邮箱提示效果的js代码
2013/08/02 Javascript
JS 删除字符串最后一个字符的实现代码
2014/02/20 Javascript
js结合正则实现国内手机号段校验
2015/06/19 Javascript
深入学习JavaScript对象
2015/10/13 Javascript
关于JS中match() 和 exec() 返回值和属性的测试
2016/03/21 Javascript
angular.js分页代码的实例
2016/07/27 Javascript
JS实现导出Excel的五种方法详解【附源码下载】
2018/03/15 Javascript
python3使用PyMysql连接mysql数据库实例
2017/02/07 Python
tensorflow创建变量以及根据名称查找变量
2018/03/10 Python
Python使用re模块正则提取字符串中括号内的内容示例
2018/06/01 Python
numpy使用fromstring创建矩阵的实例
2018/06/15 Python
Sanic框架蓝图用法实例分析
2018/07/17 Python
用Python PIL实现几个简单的图片特效
2019/01/18 Python
浅析Python数字类型和字符串类型的内置方法
2019/12/22 Python
python利用递归方法实现求集合的幂集
2020/09/07 Python
美国家具网站:Cymax
2016/09/17 全球购物
阿联酋彩妆品牌:OUD MILANO
2019/10/06 全球购物
xxx同志考察材料
2014/02/07 职场文书
现金出纳岗位职责
2014/03/15 职场文书
政府信息公开实施方案
2014/05/09 职场文书
空气环保标语
2014/06/12 职场文书
个人授权委托书
2014/09/15 职场文书
文员转正自我鉴定怎么写
2014/09/29 职场文书
法定代表人授权委托书范本
2014/10/07 职场文书
化工厂员工工作总结
2015/10/15 职场文书
升级 Win11 还是坚守 Win10?微软 Win11 新系统缺失功能大盘点
2022/04/05 数码科技
Python内置包对JSON文件数据进行编码和解码
2022/04/12 Python