python抓取豆瓣图片并自动保存示例学习


Posted in Python onJanuary 10, 2014

环境Python 2.7.6,BS4,在powershell或命令行均可运行。请确保安装了BS模块

# -*- coding:utf8 -*-
# 2013.12.36 19:41 wnlo-c209
# 抓取dbmei.com的图片。
from bs4 import BeautifulSoup
import os, sys, urllib2
# 创建文件夹,昨天刚学会
path = os.getcwd()          # 获取此脚本所在目录
new_path = os.path.join(path,u'豆瓣妹子')
if not os.path.isdir(new_path):
 os.mkdir(new_path)

def page_loop(page=0):
 url = 'http://www.dbmeizi.com/?p=%s' % page
 content = urllib2.urlopen(url)
 soup = BeautifulSoup(content)
 my_girl = soup.find_all('img')   
    # 加入结束检测,写的不好....
 if my_girl ==[]:
  print u'已经全部抓取完毕'
  sys.exit(0)
 print u'开始抓取'
 for girl in my_girl:
  link = girl.get('src')
  flink = 'http://www.dbmeizi.com/' + link
  print flink
  content2 = urllib2.urlopen(flink).read()
  with open(u'豆瓣妹子'+'/'+flink[-11:],'wb') as code:   #在OSC上现学的
   code.write(content2)
 page = int(page) + 1
 print u'开始抓取下一页'
 print 'the %s page' % page
 page_loop(page)
page_loop().
Python 相关文章推荐
深入讲解Python函数中参数的使用及默认参数的陷阱
Mar 13 Python
Python设计模式之MVC模式简单示例
Jan 10 Python
Python的numpy库中将矩阵转换为列表等函数的方法
Apr 04 Python
django 通过ajax完成邮箱用户注册、激活账号的方法
Apr 17 Python
python pandas 对时间序列文件处理的实例
Jun 22 Python
Python get获取页面cookie代码实例
Sep 12 Python
Python求两个圆的交点坐标或三个圆的交点坐标方法
Nov 07 Python
Python多线程处理实例详解【单进程/多进程】
Jan 30 Python
pyqt 实现QlineEdit 输入密码显示成圆点的方法
Jun 24 Python
python读写csv文件的方法
Aug 13 Python
Python Scrapy多页数据爬取实现过程解析
Jun 12 Python
python如何变换环境
Jul 21 Python
python文件比较示例分享
Jan 10 #Python
python发送伪造的arp请求
Jan 09 #Python
python抓取京东价格分析京东商品价格走势
Jan 09 #Python
python实现电子词典
Apr 23 #Python
python中cPickle用法例子分享
Jan 03 #Python
使用python获取CPU和内存信息的思路与实现(linux系统)
Jan 03 #Python
Python群发邮件实例代码
Jan 03 #Python
You might like
php+ajax实现图片文件上传功能实例
2014/06/17 PHP
PHP中的事务使用实例
2015/05/26 PHP
使用PHP+MySql+Ajax+jQuery实现省市区三级联动功能示例
2017/09/15 PHP
Apache站点配置SSL强制跳转443
2021/03/09 Servers
Windows 系统下安装和部署Egret的开发环境
2014/07/31 Javascript
基于jquery固定于顶部的导航响应浏览器滚动条事件
2014/11/02 Javascript
Winform客户端向web地址传参接收参数的方法
2016/05/17 Javascript
学习Bootstrap滚动监听 附调用方法
2016/07/02 Javascript
jQuery右下角悬浮广告实例
2016/10/17 Javascript
javascript实现无法关闭的弹框
2016/11/27 Javascript
Ionic2调用本地SQlite实例
2017/04/22 Javascript
Angular4自制一个市县二级联动组件示例
2017/11/21 Javascript
JavaScript笛卡尔积超简单实现算法示例
2018/07/30 Javascript
使用 Vue 实现一个虚拟列表的方法
2019/08/20 Javascript
vue v-for直接循环数字实例
2019/11/07 Javascript
[02:43]DOTA2亚洲邀请赛场馆攻略——带你走进东方体育中心
2018/03/19 DOTA
Python进行数据提取的方法总结
2016/08/22 Python
浅谈对yield的初步理解
2017/05/29 Python
利用Python操作消息队列RabbitMQ的方法教程
2017/07/19 Python
python实现支付宝当面付(扫码支付)功能
2018/05/30 Python
详解如何为eclipse安装合适版本的python插件pydev
2018/11/04 Python
重构Python代码的六个实例
2020/11/25 Python
HTML5所有标签汇总及标签意义解释
2015/03/12 HTML / CSS
韩国著名的在线综合购物网站:Akmall
2016/08/07 全球购物
英国和国际包裹递送:ParcelCompare
2019/08/26 全球购物
Spotahome意大利:公寓和房间出租
2020/02/21 全球购物
Java程序员面试题
2016/09/27 面试题
销售冠军获奖感言
2014/02/03 职场文书
文秘档案管理岗位职责
2014/03/06 职场文书
外贸采购员岗位职责
2014/03/08 职场文书
感谢信的格式
2015/01/21 职场文书
2016年精神文明建设先进个人事迹材料
2016/02/29 职场文书
每日六道java新手入门面试题,通往自由的道路
2021/06/30 Java/Android
Python Matplotlib绘制条形图的全过程
2021/10/24 Python
浅谈GO中的Channel以及死锁的造成
2022/03/18 Golang
MySql重置root密码 --skip-grant-tables
2022/04/11 MySQL