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

yipeiwu_com6年前Python爬虫

环境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-pypcap抓取带VLAN标签的数据包方法

利用python-pypcap抓取带VLAN标签的数据包方法

1、背景介绍 在采用通常的socket抓包方式下,操作系统会自动将收到包的VLAN信息剥离,导致上层应用收到的包不会含有VLAN标签信息。而libpcap虽然是基于socket实现抓包,...

python使用rabbitmq实现网络爬虫示例

编写tasks.py复制代码 代码如下:from celery import Celeryfrom tornado.httpclient import HTTPClientapp = C...

python爬取拉勾网职位数据的方法

python爬取拉勾网职位数据的方法

今天写的这篇文章是关于python爬虫简单的一个使用,选取的爬取对象是著名的招聘网站——拉钩网,由于和大家的职业息息相关,所以爬取拉钩的数据进行分析,对于职业规划和求职时的信息提供有很大...

在Python中使用cookielib和urllib2配合PyQuery抓取网页信息

在Python中使用cookielib和urllib2配合PyQuery抓取网页信息

刚才好无聊,突然想起来之前做一个课表的点子,于是百度了起来。 刚开始,我是这样想的:在写微信墙的时候,用到了urllib2【两行代码抓网页】,那么就只剩下解析html了。于是百度:pyt...

python构建基础的爬虫教学

python构建基础的爬虫教学

爬虫具有域名切换、信息收集以及信息存储功能。 这里讲述如何构建基础的爬虫架构。 1、urllib库:包含从网络请求数据、处理cookie、改变请求头和用户处理元数据的函数。是python...