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基于BeautifulSoup实现抓取网页指定内容的方法
Jul 09 Python
轻量级的Web框架Flask 中模块化应用的实现
Sep 11 Python
python安装numpy&安装matplotlib& scipy的教程
Nov 02 Python
python 用lambda函数替换for循环的方法
Jun 09 Python
在numpy矩阵中令小于0的元素改为0的实例
Jan 26 Python
Python实现微信消息防撤回功能的实例代码
Apr 29 Python
在django模板中实现超链接配置
Aug 21 Python
Django对接支付宝实现支付宝充值金币功能示例
Dec 17 Python
Tensorflow 实现释放内存
Feb 03 Python
pyecharts调整图例与各板块的位置间距实例
May 16 Python
Windows下pycharm安装第三方库失败(通用解决方案)
Sep 17 Python
python turtle绘制多边形和跳跃和改变速度特效
Mar 16 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程序员编程注意事项
2008/04/10 PHP
PHP全概率运算函数(优化版) Webgame开发必备
2011/07/04 PHP
支持生僻字且自动识别utf-8编码的php汉字转拼音类
2014/06/27 PHP
php解析字符串里所有URL地址的方法
2015/04/03 PHP
PHP实现将textarea的值根据回车换行拆分至数组
2015/06/10 PHP
php基于openssl的rsa加密解密示例
2016/07/11 PHP
php字符串操作常见问题小结
2016/10/11 PHP
js字符编码函数区别分析
2008/06/05 Javascript
multiSteps 基于Jquery的多步骤滑动切换插件
2011/07/22 Javascript
修复ie8&chrome下window的resize事件多次执行
2011/10/20 Javascript
浅析jquery某一元素重复绑定的问题
2014/01/03 Javascript
JavaScript 浏览器对象模型BOM使用介绍
2015/04/13 Javascript
jquery计算鼠标和指定元素之间距离的方法
2015/06/26 Javascript
倾力总结40条常见的移动端Web页面问题解决方案
2016/05/24 Javascript
JS基于递归算法实现1,2,3,4,5,6,7,8,9倒序放入数组中的方法
2017/01/03 Javascript
vue动态绑定组件子父组件多表单验证功能的实现代码
2018/05/14 Javascript
基于form-data请求格式详解
2019/10/29 Javascript
[01:10]为家乡而战!完美世界城市挑战赛全国总决赛花絮
2019/07/25 DOTA
python基于pdfminer库提取pdf文字代码实例
2019/08/15 Python
python数组循环处理方法
2019/08/26 Python
Pytorch中膨胀卷积的用法详解
2020/01/07 Python
Python3 pywin32模块安装的详细步骤
2020/05/26 Python
python如何代码集体右移
2020/07/20 Python
python 19个值得学习的编程技巧
2020/08/15 Python
详解Python yaml模块
2020/09/23 Python
CSS3的Border-radius轻松制作圆角
2012/12/24 HTML / CSS
PurCotton全棉时代官网:100%天然棉花生产的生活护理用品
2016/11/18 全球购物
营业员个人总结的自我评价
2013/10/25 职场文书
汽车维修与检测专业应届生求职信
2013/11/12 职场文书
《值日生》教学反思
2014/02/17 职场文书
教师一帮一活动总结
2014/07/08 职场文书
个人债务授权委托书
2014/10/17 职场文书
租赁协议书
2015/01/27 职场文书
消防安全主题班会
2015/08/12 职场文书
Nginx 过滤静态资源文件的访问日志的实现
2021/03/31 Servers
零基础学java之方法的定义与调用详解
2022/04/10 Java/Android