参考资料:http://v.qq.com/boke/page/q/g/t/q01713cvdgt.html

目的:爬取网站图片

实际上以上链接的视频中已经将整个过程说的非常明白了,稍微有点计算机基础的人想来都不难实现。

所以,废话不多说,直接粘我写的脚本了事,有问题看视频即可。

#################################################################3

import os,requests,urllib.request
from bs4 import BeautifulSoup header = {'User-Agent':'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', #这两个参数user-agent以及cookie,随便找一个有“开发者工具”功能的浏览器都可以看到,视频里有讲到,这我就不暴露了
'Cookie':'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'}
folter_path = 'E://temp/xxxxxx/' def make_file(path): #创建文件夹的函数,并返回一个图片存贮路径
if not os.path.isdir(folter_path):
os.mkdir(folter_path)
t = os.path.join(folter_path,str(path) + '/')
if not os.path.isdir(t):
os.mkdir(t)
return t def down_pic(start_num,end_num,type): #爬取图片的函数,参数是:起始页,结束页,下载类型
for num in range(int(start_num),int(end_num)):
url = 'http://xxxxxx.net/ooxx/page-{}'.format(num) #具体网址见视频吧,或者自己找一个也可以,这个随意。
source_code = requests.get(url,headers = header)
plain_txt = source_code.text
Soup = BeautifulSoup(plain_txt)
download_link = []
print('get' + str(num)) for pic_tag in Soup.find_all('img'):
pic_link = pic_tag.get(str(type))
download_link.append(pic_link) while None in download_link: #这块实际上用处不大,因为用type做了区分,不会产生垃圾数据,不过懒得去掉了。
download_link.remove(None) for item in download_link: #下载图片
urllib.request.urlretrieve(item,pic_path + item[-10:]) start_num = 1760
end_time = 1767
type = {'jpg':'src','gif':'org_src'} #类型字典 pic_path = make_file(type['gif'])
down_pic(start_num,end_time,type['gif']) ##################################################################################
代码比视频教程多的东西,是以下几个方面:
1、增加了创建图片存贮路径的函数和功能,并对下载类型做了区分。
2、分类型下载图片,如果你使用src区分,是下载不了完整的gif图的,这个自行发现吧。
3、额,感谢视频作者吧,既然视频作者是公开发出的,我这发出链接应该还OK吧

python3.5学习笔记--一个简单的图片爬虫的更多相关文章

  1. python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容

    python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容 Beautiful Soup 是用Python写的一个HTML/XML的解析器,它可以很好的处理不规范标记并生成剖 ...

  2. python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息,抓取政府网新闻内容

    python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息PySpider:一个国人编写的强大的网络爬虫系统并带有强大的WebUI,采用Python语言编写 ...

  3. python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例

    python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例 新浪爱彩双色球开奖数据URL:http://zst.aicai.com/ssq/openInfo/ 最终输出结果格 ...

  4. JSP学习笔记(三):简单的Tomcat Web服务器

    注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...

  5. python3.4学习笔记(十八) pycharm 安装使用、注册码、显示行号和字体大小等常用设置

    python3.4学习笔记(十八) pycharm 安装使用.注册码.显示行号和字体大小等常用设置Download JetBrains Python IDE :: PyCharmhttp://www. ...

  6. python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法

    python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法window安装redis,下载Redis的压缩包https://git ...

  7. python3.4学习笔记(十六) windows下面安装easy_install和pip教程

    python3.4学习笔记(十六) windows下面安装easy_install和pip教程 easy_install和pip都是用来下载安装Python一个公共资源库PyPI的相关资源包的 首先安 ...

  8. python3.4学习笔记(十五) 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)

    python3.4学习笔记(十五) 字符串操作(string替换.删除.截取.复制.连接.比较.查找.包含.大小写转换.分割等) python print 不换行(在后面加上,end=''),prin ...

  9. python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL

    python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL实战例子:使用pyspider匹配输出带.html结尾的URL:@config(a ...

随机推荐

  1. 关于jetty项目中的问题.

    在某台虚拟机上部署的项目出现的问题: 我想要更改定义的owl文件,重启服务器,却打不开网页. 1.couldnot found owl ,然后我拷贝一份owl到work/config目录下,继续更改配 ...

  2. 【.net部署】Server Error in '/' Application.错误解决方案

    报错: Server Error in '/' Application.---------------------------------------------------------------- ...

  3. 课前HTML基础

    一..站点的建立 作用:用来归纳一个网站上所有的网页,素材以及他们之间的联系. 站点根文件夹的命名规则:必须是以英文或者下划线开头,后面可接数字和下划线,不可以使用中文和特殊字符. 二:创建HTML页 ...

  4. 在Ubuntu 12.4 下安装 nginx, MySQL, PHP

    LNMP是时下很流行的网站配置,我在配置蝉大师服务器的时候顺带把经验做个分享,蝉大师的网址是:http://www.ddashi.com/ 1.第一步, 跟新apt-get 输入: sudo apt- ...

  5. JAVA Web day02--- Android小白的第二天学习笔记

    CSS(美工部分知识,了解) 1. CSS概述 1.1.CSS是什么? * CSS 指层叠样式表 样式表:存储样式的地方 层叠:一层一层叠加 高大富有帅气人 1.2.CSS有什么作用? *CSS就是用 ...

  6. Swift----方法 、 下标 、 继承 、 初始化 、 析构方法 、 可选链

    下标的使用 1.1 问题 下标可以定义在类.结构体和枚举中,可以认为是访问对象.集合或序列的快捷方式,不需要再调用实例的特定的赋值和访问方法. 本案例定义一个Matrix结构体,用于呈现一个Doubl ...

  7. 项目中创建单元测试—VS2012

    我们在每个项目的开发过程中,开发完一个功能,自己首先需要测试一下,VS提供了很方便的测试功能,可以很容易的创建单元测试,但是在VS2012中类名上点击右键没有『创建单元测试』这个菜单,需要先进行设置一 ...

  8. Oracle优化总结

    本文主要从大型数据库ORACLE环境四个不同级别的调整分析入手,分析ORACLE的系统结构和工作机理,从九个不同方面较全面地总结了ORACLE数据库的优化调整方案.关键词 ORACLE数据库 环境调整 ...

  9. CLR via C# 3rd - 08 - Methods

       Kinds of methods        Constructors      Type constructors      Overload operators      Type con ...

  10. java连接sql server2005

    转自:http://blog.sina.com.cn/s/blog_889b58310100zqyz.html 一:配置 第一步:在网上下载SQLServer2005的驱动包 http://www.m ...