Python到底多强大,绝对超乎菜鸟们(当然也包括我了)的想象。近期我接触到了爬虫,被小小地震撼一下。总体的感觉就两个词——“强大”和“有趣”。今天就跟大家分享一下两个简易的爬虫案例,大牛们请飞过哈。

先来科普一下啊“爬虫技术”吧。网络爬虫(又被称为网页蜘蛛,网络机器人,网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。

它的名字虽然很多,但是过程很明确,就两个部分:一是从网页源代码中爬取有用信息;二是对这些信息进行处理(如分析、下载等)。

下面用两种方法制作批量爬取网络图片的方法。

第一种方法:基于urllib实现

要点如下:

1.url_request = request.Request(url)

2.url_response = request.urlopen(url) 或者 url_response = request.urlopen(url_request)

3.data=url_response .read().decode('utf-8')

4.jpglist=re.findall(正则表达式,data)

5.request.urlretrieve(jpgUrl,'%s.jpg' %n)   #下载,第一个参数网址,第二参数名称

第一个案例,我们爬取了猫扑上的一个网页上的图片,案例代码如下。

基于urllib案例完整代码

需要说明的是代码request.urlretrieve(each,'pic2\\%s.jpg'  %n)中“pic2\\”代表下载的图片放置在提前建好的文件夹pic2里。运行代码结束之后IDLE和最后结果如下图所示。

代码运行界面1

案例1结果

第二种实现方法:基于requests实现

要点如下:

1.data=requests.get(url).text

2.jpglist=re.findall(正则表达式,data,re.S)

3.pic=requests.get(pic_url,timeout=10)

4. fp=open(pic_name,'wb')

fp.write(pic.content)

fp.close()

在这个案例中我们爬取了一个壁纸网站的网页,预测应该图片质量比较高吧。完整代码如下:

基于requests案例代码

我们来看一下运行代码的结果,如下图所示。真心不错,我们获得了42张壁纸,而且是在短短几秒钟内完成的,很厉害的感觉有木有。

代码运行界面2

案例二结果

改进一下

需要说明一下原理。这个针对百度图片搜索功能完成的,因为我们发现关键词就在搜索结果页的网址中。我们只需要把网址中的关键词换掉,就是针对新的关键词的结果页网址。

完整代码如下:

改进后代码

这里我输入了“北京”,如下图。结果针对让人振奋,自动下载了59张关于北京的图片,有没有很爽的感觉。

代码运行界面3

案例三结果

参考学习网址:

python爬虫爬取图片代码_Python爬虫入门:批量爬取网上图片的两种简单实现方式——基于urllib与requests...相关推荐

  1. python爬虫快速下载图片_Python爬虫入门:批量爬取网上图片的两种简单实现方式——基于urllib与requests...

    Python到底多强大,绝对超乎菜鸟们(当然也包括我了)的想象.近期我接触到了爬虫,被小小地震撼一下.总体的感觉就两个词--"强大"和"有趣".今天就跟大家分享 ...

  2. python爬虫爬取图片代码_python爬虫实战 爬取天极图片

    学习爬虫个人的意见是直接实战效果会很好 不要等全学完requests ,正则表达式,BeautifulSoup等再来实际操作.其实很多实战我们并不会用到requests库,BeautifulSoup, ...

  3. python爬虫爬取图片代码_python爬虫-20行代码爬取王者荣耀所有英雄图片,小白也轻轻松松...

    1.环境python3.6 需要用到的库: re.os.requests 2.简介 王者荣耀可以算得上是比较受欢迎的手游之一了,应该有不少的人都入坑过农药,我们今天的目的就是要爬取王者荣耀的高清英雄壁 ...

  4. datetime 比较_Python 字典中key命中取值的两种方法性能比较!

    起步 从字典中取值有两个方法,一个是先判断key是否在字典中再取值:另一个是包裹try块中直接去取值: Python资源共享群:484031800 def use_in(d, key):if key ...

  5. python实例豆瓣音乐代码_Python爬虫实战(3)-爬取豆瓣音乐Top250数据(超详细

    前言 首先我们先来回忆一下上两篇爬虫实战文章: 第一篇:讲到了requests和bs4和一些网页基本操作. 第二篇:用到了正则表达式-re模块 今天我们用lxml库和xpath语法来爬虫实战. 1.安 ...

  6. python爬虫知乎代码_python爬虫知乎的简单代码实现

    随着时代的发展,我们很依赖网络帮助我们解决问题,遇到什么问题就会先百度.除了百度,现在大多数人还会选择通过知乎来解决问题.知乎类似于一个论坛,讨论度比百度高一些,那你知道如何用python爬虫爬知乎网 ...

  7. python爬虫执行js代码_python爬虫执行js代码-execjs

    一.安装模块 pip install PyExecJS execjs会自动使用当前电脑上的运行时环境(建议用nodejs,与Phantomjs) 二.简单的使用 import execjs js_ob ...

  8. python获取字典的值_python取出字典中的所有值的两种方法

    原博文 2018-06-19 18:29 − 方法一: spam = {'A':123 ,'B':345,'C':345 } for k,v in spam.items(): print(k,v) 方 ...

  9. 3D MAX入门篇(1)常用快捷命令及两种基础建模方式

    3D MAX入门篇(1)常用快捷命令及两种基础建模方式 基于图片的对程型模型----画线式建模 1.在界面画一个平面 2.调整平面大小,确认与要插入的图片尺寸一样 3.通过添加样条线绘制出模型的一半 ...

最新文章

  1. 解读《这就是 OKR》 | 你制定的 OKR 真的合格吗?
  2. python处理excel奖金_60万行的Excel数据,Python轻松处理
  3. Matrix工作室第六届纳新AI组考核题(B卷)
  4. Oracle中exp的使用2
  5. 用ISA Server做***路由代替专线
  6. unslider.js 实现移动web轮播
  7. JAVA 表格组件 + rs.beforeFirst()使用
  8. Python实现好友管理系统
  9. 计算机中常用的声音编辑工具有哪些,电脑常用音频剪辑软件
  10. java short int 转换_基本类型'short'-Java中的强制转换
  11. 解决最新小马激活工具导致主页劫持问题
  12. 题目汇总(ACWing)
  13. python:汽水瓶
  14. linux裁剪图片的软件,【美图秀秀Linux版】美图秀秀Linux版下载 v1.0.0.0 免费最新版-趣致软件园...
  15. Python大数据培训课程培训费用是多少
  16. Python之abc模块
  17. 院士给自己博士生写的一封信:博士生每天工作12小时只是一个下限
  18. 波士顿大学计算机科学研究生,波士顿大学计算机科学硕士专业
  19. 假阳率(第一类错误)、假阴率,召回率、精确率
  20. 超神学院德诺计算机,超神学院:扒一扒隐藏起来的人物,德诺星系的人有没有活下来的?...

热门文章

  1. 【Android进阶】7、Android 各 SDK 版本的区别与兼容
  2. read_csv读pima_data有感
  3. QT添加lib库后提示 No rule to make target “xxx.lib“ needed by “xxx.exe“
  4. 为什么净水器连线要接地?
  5. 【Linux】shell脚本实战-流程控制语句case
  6. Solidworks安装SW2URDF插件安装后无法正常加载问题
  7. python背景图颜色_matplotlib作图,刻度和背景颜色
  8. 首版次高端软件申报条件和好处
  9. jenkins php代码发布图
  10. 右边补0 润乾报表_润乾报表查询所有汇总