参考资料: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. python基础之模块

    模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合. 而对于一个复杂的功能来,可能需要多个函数 ...

  2. Extjs,Git,插件....学习网址

    详细的extjs讲解http://wenku.baidu.com/view/e98a781352d380eb62946de4.html 博客 http://www.cnblogs.com/iamlil ...

  3. 内网公告牌获取天气信息解决方案(C# WebForm)

    需求:内网公告牌能够正确显示未来三天的天气信息 本文关键字:C#/WebForm/Web定时任务/Ajax跨域 规划: 1.天定时读取百度接口获取天气信息并存储至Txt文档: 2.示牌开启时请求Web ...

  4. HTTP动词

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

  5. Javascript、CSS和IMG之网页执行探索

    测试环境:windows/chrome 实例1:页面中仅有图片 <html xmlns="http://www.w3.org/1999/xhtml"> <head ...

  6. sumoselect插件

    由于项目需要,研究了下sumoselect插件,接下来简单介绍下sumoselect. 在百度上搜索“sumoselect.js”,查到的网页基本上都有对sumoselect的基本介绍,如下: 简单介 ...

  7. 黑马----JAVA比较器:Comparable和Comparator

    黑马程序员:Java培训.Android培训.iOS培训..Net培训 一.Comparable接口 1.public interface Comparable{ public int compare ...

  8. 适配布局-ios

    // 系统的约束代码 @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; UIView *superVi ...

  9. Watin 杂谈

    Web自动化测试(三)[弹出窗口处理] http://blog.csdn.net/cctv_hu/article/details/5984373 http://www.cyqdata.com/cnbl ...

  10. C语言的基础

    任何事物的运行离不开两个部分,一个部分是"事物",一个部分是"运行",前者是状态,在C语言中表现为常量.变量等,后者是过程,在C语言中表现为语句.函数等. 语言 ...