参考资料: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. 我的第一个HTML的程序

    <html> <head><title>title为显示标签页的内容</title></head> <body> <h1& ...

  2. C#给DataTable添加序号、C#给DataTable添加合计、小计

    /// <summary>        /// 给DataTable添加序号        /// </summary>        /// <param name= ...

  3. Cookies的作用

    Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据(通常经过加密).Cookies就是服务器暂存放在你的电脑里的资料(.tx ...

  4. [转]Scrapy入门教程

    关键字:scrapy 入门教程 爬虫 Spider 作者:http://www.cnblogs.com/txw1958/ 出处:http://www.cnblogs.com/txw1958/archi ...

  5. 关于Webstorm的一些配置

    一:代码缩略图插件:CodeGlance: 二:皮肤与主题使用的sublime的系列风格. 三:实现内嵌JS代码的高亮显示.https://segmentfault.com/q/10100000024 ...

  6. 设置时间&时区

    设置时间之前要先了解一件事,时间分为系统时间与硬件时间 如果硬件时间与系统时间不相同的话,经常会发现自己写的程序时间可能对不上 首先修改硬件时间 1)修改时区 输入命令: tzselect 按照指示选 ...

  7. Back to openGL!

    #include <iostream> #include <windows.h> #include <gl/glut.h> #include <math.h& ...

  8. HTTP动词

    对于资源的具体操作类型,由HTTP动词表示. 常用的HTTP动词有下面五个(括号里是对应的SQL命令). GET(SELECT):从服务器取出资源(一项或多项). POST(CREATE):在服务器新 ...

  9. 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。此 RPC 请求中提供了过多的参数。最多应为 2100

    出现这个问题的背景是,判断一批激活码在系统中是否已经存在,很傻的一个作法是,把这一批激活码,以in(in (‘ddd‘,‘aaa‘))的形式来处理,导致问题的出现. 后来,查找资料,http://bb ...

  10. Centeros7 环境相关问题

    服务处理命令 systemctl start mariadb #启动MariaDB systemctl stop mariadb #停止MariaDB systemctl restart mariad ...