Python实现爬取百度贴吧帖子所有楼层图片的爬虫示例


Posted in Python onApril 26, 2018

本文实例讲述了Python实现爬取百度贴吧帖子所有楼层图片的爬虫。分享给大家供大家参考,具体如下:

下载百度贴吧帖子图片,好好看

Python实现爬取百度贴吧帖子所有楼层图片的爬虫示例

python2.7版本:

#coding=utf-8
import re
import requests
import urllib
from bs4 import BeautifulSoup
import time
time1=time.time()
def getHtml(url):
  page = requests.get(url)
  html =page.text
  return html
def getImg(html):
  soup = BeautifulSoup(html, 'html.parser')
  img_info = soup.find_all('img', class_='BDE_Image')
  global index
  for index,img in enumerate(img_info,index+1):
    print ("正在下载第{}张图片".format(index))
    urllib.urlretrieve(img.get("src"),'C:/pic4/%s.jpg' % index)
def getMaxPage(url):
  html = getHtml(url)
  reg = re.compile(r'max-page="(\d+)"')
  page = re.findall(reg,html)
  page = int(page[0])
  return page
if __name__=='__main__':
  url  = "https://tieba.baidu.com/p/5113603072"
  page = getMaxPage(url)
  index = 0
  for i in range(1,page):
    url = "%s%s" % ("https://tieba.baidu.com/p/5113603072?pn=",str(i))
    html = getHtml(url)
    getImg(html)
  print ("OK!All DownLoad!")
  time2=time.time()
  print u'总共耗时:' + str(time2 - time1) + 's'
Python 相关文章推荐
多线程爬虫批量下载pcgame图片url 保存为xml的实现代码
Jan 17 Python
Python用GET方法上传文件
Mar 10 Python
基于Python 的进程管理工具supervisor使用指南
Sep 18 Python
Python pass详细介绍及实例代码
Nov 24 Python
Python获取本机所有网卡ip,掩码和广播地址实例代码
Jan 22 Python
Python实现的微信好友数据分析功能示例
Jun 21 Python
Python Flask前后端Ajax交互的方法示例
Jul 31 Python
python ipset管理 增删白名单的方法
Jan 14 Python
简单了解python的一些位运算技巧
Jul 13 Python
python实现H2O中的随机森林算法介绍及其项目实战
Aug 29 Python
浅谈Django+Gunicorn+Nginx部署之路
Sep 11 Python
keras中的卷积层&池化层的用法
May 22 Python
Python实现的计算器功能示例
Apr 26 #Python
python email smtplib模块发送邮件代码实例
Apr 26 #Python
Python利用正则表达式实现计算器算法思路解析
Apr 25 #Python
Python实现随机生成手机号及正则验证手机号的方法
Apr 25 #Python
Python实现按中文排序的方法示例
Apr 25 #Python
Python实现的基于优先等级分配糖果问题算法示例
Apr 25 #Python
python自动登录12306并自动点击验证码完成登录的实现源代码
Apr 25 #Python
You might like
Zend的MVC机制使用分析(一)
2013/05/02 PHP
php实现的Curl封装类Curl.class.php用法实例分析
2015/09/25 PHP
PHP Post获取不到非表单数据的问题解决办法
2018/02/27 PHP
PHP设计模式之数据访问对象模式(DAO)原理与用法实例分析
2019/12/12 PHP
jquery isType() 类型判断代码
2011/02/14 Javascript
script标签属性type与language使用选择
2012/12/02 Javascript
JSON语法五大要素图文介绍
2012/12/04 Javascript
P3P Header解决Cookie跨域的问题
2013/03/12 Javascript
深入探讨JavaScript、JQuery屏蔽网页鼠标右键菜单及禁止选择复制
2014/06/10 Javascript
jQuery Easyui学习之datagrid 动态添加、移除editor
2016/01/27 Javascript
JavaScript入门系列之知识点总结
2016/03/24 Javascript
jquery 中toggle的2种用法详解(推荐)
2016/09/02 Javascript
JS文件/图片从电脑里面拖拽到浏览器上传文件/图片
2017/03/08 Javascript
Angular4 ElementRef的应用
2018/02/26 Javascript
AngularJS监听ng-repeat渲染完成的方法
2018/03/20 Javascript
小程序图片剪裁加旋转的示例代码
2018/07/10 Javascript
JQuery属性操作与循环用法示例
2019/05/15 jQuery
详解利用nodejs对本地json文件进行增删改查
2019/09/20 NodeJs
javascript数组元素删除方法delete和splice解析
2019/12/09 Javascript
vuex存取值和映射函数使用说明
2020/07/24 Javascript
JavaScript事件循环及宏任务微任务原理解析
2020/09/02 Javascript
jQuery实现日历效果
2020/09/11 jQuery
详解基于element的区间选择组件校验(交易金额)
2021/01/07 Javascript
python判断、获取一张图片主色调的2个实例
2014/04/10 Python
在centos7中分布式部署pyspider
2017/05/03 Python
Python基于正则表达式实现检查文件内容的方法【文件检索】
2017/08/30 Python
Python排序搜索基本算法之选择排序实例分析
2017/12/09 Python
python设定并获取socket超时时间的方法
2019/01/12 Python
对Python3使运行暂停的方法详解
2019/02/18 Python
解决django model修改添加字段报错的问题
2019/11/18 Python
分享一枚pycharm激活码适用所有pycharm版本我的pycharm2020.2.3激活成功
2020/11/20 Python
解决margin 外边距合并问题
2019/07/03 HTML / CSS
高中生学习计划书
2014/09/15 职场文书
2015年禁毒工作总结
2015/04/30 职场文书
保险公司增员口号
2015/12/25 职场文书
vmware虚拟机打不开vmx文件怎么办 ?vmware虚拟机vmx文件打开方法
2022/04/08 数码科技