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 相关文章推荐
打开电脑上的QQ的python代码
Feb 10 Python
Python获取apk文件URL地址实例
Nov 01 Python
Python利用pyHook实现监听用户鼠标与键盘事件
Aug 21 Python
python提取页面内url列表的方法
May 25 Python
python中星号变量的几种特殊用法
Sep 07 Python
解决pycharm运行出错,代码正确结果不显示的问题
Nov 30 Python
python实现向微信用户发送每日一句 python实现微信聊天机器人
Mar 27 Python
django框架模型层功能、组成与用法分析
Jul 30 Python
python隐藏类中属性的3种实现方法
Dec 19 Python
pytorch GAN伪造手写体mnist数据集方式
Jan 10 Python
VS2019+python3.7+opencv4.1+tensorflow1.13配置详解
Apr 16 Python
Python Django搭建文件下载服务器的实现
May 10 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.ini实现Mysql导入数据库文件最大限制的修改方法
2007/12/11 PHP
PHP实现的文件上传类与用法详解
2017/07/05 PHP
phpstorm最新激活码分享亲测phpstorm2020.2.3版可用
2020/11/22 PHP
JQuery 写的个性导航菜单
2009/12/24 Javascript
js或css文件后面跟参数的原因说明
2010/01/09 Javascript
javascript开发技术大全-第3章 js数据类型
2011/07/03 Javascript
常见JS效果之图片减速度滚动实现代码
2011/12/08 Javascript
jQuery中使用animate自定义动画的方法
2016/05/29 Javascript
DropDownList实现可输入可选择(两种版本可选)
2016/12/07 Javascript
jQuery多选框选择数量限制方法
2017/02/08 Javascript
js获取地址栏中传递的参数(两种方法)
2017/02/08 Javascript
Angular在一个页面中使用两个ng-app的方法(二)
2017/02/20 Javascript
node中Express 动态设置端口的方法
2017/08/04 Javascript
jQuery事件对象的属性和方法详解
2017/09/09 jQuery
浅谈HTTP 缓存的那些事儿
2018/10/17 Javascript
element中el-container容器与div布局区分详解
2020/05/13 Javascript
vue 使用async写数字动态加载效果案例
2020/07/18 Javascript
[01:13:59]LGD vs Mineski Supermajor 胜者组 BO3 第三场 6.5
2018/06/06 DOTA
python定时器(Timer)用法简单实例
2015/06/04 Python
在pycharm中python切换解释器失败的解决方法
2018/10/29 Python
python 找出list中最大或者最小几个数的索引方法
2018/10/30 Python
python 动态渲染 mysql 配置文件的示例
2020/11/20 Python
python 监控服务器是否有人远程登录(详细思路+代码)
2020/12/18 Python
HTML5中新标签和常用标签详解
2014/03/07 HTML / CSS
香港No.1得奖零食网:香港零食大王
2016/07/22 全球购物
印尼最大的网上书店:Gramedia.com
2018/09/13 全球购物
俄罗斯三星品牌商店:GalaxyStore
2020/11/04 全球购物
大学生自我鉴定范文模板
2014/01/21 职场文书
化学教育专业求职信
2014/07/08 职场文书
个人收入证明模板
2014/09/18 职场文书
先进单位事迹材料
2014/12/25 职场文书
放牛班的春天观后感
2015/06/01 职场文书
贫困证明怎么写
2015/06/16 职场文书
纪委立案决定书
2015/06/24 职场文书
读《瓦尔登湖》有感:每个人都需要一个瓦尔登湖
2019/10/17 职场文书
Python 线程池模块之多线程操作代码
2021/05/20 Python