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合并字符串的3种方法
May 21 Python
详解Python核心对象类型字符串
Feb 11 Python
python使用__slots__让你的代码更加节省内存
Sep 05 Python
利用Python将数值型特征进行离散化操作的方法
Nov 06 Python
python3+selenium实现126邮箱登陆并发送邮件功能
Jan 23 Python
python3.6+selenium实现操作Frame中的页面元素
Jul 16 Python
详解使用Python下载文件的几种方法
Oct 13 Python
Windows系统下pycharm中的pip换源
Feb 23 Python
在Django中预防CSRF攻击的操作
Mar 13 Python
浅谈Python里面None True False之间的区别
Jul 09 Python
Python生成器generator原理及用法解析
Jul 20 Python
Python实现文字pdf转换图片pdf效果
Apr 03 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面向对象全攻略 (十一)__toString()用法 克隆对象 __call处理调用错误
2009/09/30 PHP
PHP中数组的三种排序方法分享
2012/05/07 PHP
浅谈php安全性需要注意的几点事项
2014/07/17 PHP
PHP设计模式之适配器模式代码实例
2015/05/11 PHP
PHP整合PayPal支付
2015/06/11 PHP
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
2016/01/09 PHP
PHP基于openssl实现非对称加密代码实例
2020/06/19 PHP
用JavaScrpt实现文件夹简单轻松加密的实现方法图文
2008/09/08 Javascript
js tab效果的实现代码
2009/12/26 Javascript
JQuery通过AJAX从后台获取信息显示在表格上并支持行选中
2015/09/15 Javascript
jQuery实现彩带延伸效果的网页加载条loading动画
2015/10/29 Javascript
深入解析JavaScript中函数的Currying柯里化
2016/03/19 Javascript
Vue+SpringBoot开发V部落博客管理平台
2017/12/27 Javascript
JS中的算法与数据结构之栈(Stack)实例详解
2019/08/20 Javascript
vue 需求 data中的数据之间的调用操作
2020/08/05 Javascript
Python 类与元类的深度挖掘 I【经验】
2016/05/06 Python
Python实现获取前100组勾股数的方法示例
2018/05/04 Python
Python中list查询及所需时间计算操作示例
2018/06/21 Python
Python单向链表和双向链表原理与用法实例详解
2018/08/31 Python
python操作excel让工作自动化
2019/08/09 Python
简单分析python的类变量、实例变量
2019/08/23 Python
Pandas实现DataFrame按行求百分数(比例数)
2019/12/27 Python
Python面向对象封装操作案例详解 II
2020/01/02 Python
基于Python快速处理PDF表格数据
2020/06/03 Python
python图片合成的示例
2020/11/09 Python
animation和transition的区别
2020/10/12 HTML / CSS
海淘母婴商城:国际妈咪
2016/07/23 全球购物
Max&Co官网:意大利年轻女性时尚品牌
2017/05/16 全球购物
Mytheresa美国官网:德国知名的女性奢侈品电商
2017/05/27 全球购物
美国男士内衣品牌:Tommy John
2017/12/22 全球购物
印度服装购物网站:Limeroad
2018/09/26 全球购物
COSETTE官网:奢华,每天
2020/03/22 全球购物
习近平在党的群众路线教育实践活动总结大会上的讲话全文
2014/10/25 职场文书
用Python将库打包发布到pypi
2021/04/13 Python
浅谈Python numpy创建空数组的问题
2021/05/25 Python
Github 使用python对copilot做些简单使用测试
2022/04/14 Python