python编程语言,可以说是新型语言,也是这两年来发展比较快的一种语言,而且不管是少儿还是成年人都可以学习这个新型编程语言,今天南京小码王python培训机构变为大家分享了一个python爬虫教程。

  网络爬虫,又被称为网页蜘蛛、网络机器人,爬虫分为通用网络爬虫、聚焦网络爬虫、增量式网络爬虫、Deep Web爬虫这四种。“虫如其名”,爬虫并不是一种我们熟知的无脊椎动物中的节肢动物,而是一类计算器程序或脚本,该程序能够自动爬取万维网中的信息,并能够按照一定的要求加工这些信息。

  c/c++、java、python、php等语言都可以用来写爬虫程序,但总的来讲,目前大多数开发人员都会选择python、php等语言进行开发爬虫程序,所以今天将使用python教大家制作一个非常简单实用的爬虫程序。

  爬虫原理

  当我们在网络中寻找我们需要的信息时,一般都会通过浏览器进行操作,浏览器会将我们的请求发送给存放信息的服务器,服务器收到发过来的请求之后会把请求的数据返回给浏览器。

  形象一点讲,浏览器就相当于我们人类的翻译官,将我们的人类语言翻译给服务器听,服务器听懂之后就开始执行我们的命令,然后将结果说给浏览器听,浏览器再将结果翻译给我们人类。所以我们的爬虫就是通过不断地模仿浏览器发出的指令,让服务器不断地执行相应的命令,此时服务器并不知道发送命令的是人类还是爬虫,因为服务器只能听得懂浏览器“语言”。

  为什么要这样呢?我们人类自己发出命令不好吗?为什么要让机器代劳呢?举个例子:例如你正在做人工智能中的图片识别,这将需要到很多训练数据——图片,你总不能手动地一个个地将图片下载下来吧?这时候爬虫的作用就来了!

  python爬虫原理

  举个例子,我们现在想要批量抓取猫的图片用于猫狗分类模型训练,聪明伶俐的选择用python去代替手动下载猫、狗图片这个枯燥乏味的过程。

  在python中,我们可以使用requests.get(https://www.jkys120.com/)向目标地址发起请求,在这之后服务器会返回一些数据,在这些数据里面就有猫、狗图片的存放地址,我们需要将图片地址和HTML标签以及其他无用信息区分开来,所以将使用到正则化的方法,在这里可以使用re库,这个库自带一些正则化方法。

  最后我们需要将指定url中的文件下载到电脑中,这将用到urllib库中的request.urlretrieve()方法。

  代码教程

  首先按照惯例我们先把将要使用到的库导入到py文件中。

  import requestsimport jsonimport urllibimport re

  然后开始编写我们的爬取程序,这里以百度图片为例(请求地址在地址栏上,区别只是在word关键字上),程序详解在下面的注释当中。

  requests_content的text属性就是服务器返回的文本数据,里面包含了一些HTML标签和JavaScript脚本代码。

  这是我们将使用正则化方法来把图片地址提取出来。

  最后将url中的图片文件下载到电脑上。

  运行结果

  在这里批量下载了一些电脑壁纸,情况如何一起来看看吧!

简单的python爬虫教程:批量爬取图片的更多相关文章

  1. Python爬虫教程-17-ajax爬取实例(豆瓣电影)

    Python爬虫教程-17-ajax爬取实例(豆瓣电影) ajax: 简单的说,就是一段js代码,通过这段代码,可以让页面发送异步的请求,或者向服务器发送一个东西,即和服务器进行交互 对于ajax: ...

  2. Python爬虫学习 - day1 - 爬取图片

    利用Python完成简单的图片爬取 最近学习到了爬虫,瞬时觉得很高大上,想取什么就取什么,感觉要上天.这里分享一个简单的爬取汽车之家文章列表的图片教程,供大家学习. 需要的知识点储备 本次爬虫脚本依赖 ...

  3. python爬虫---scrapy框架爬取图片,scrapy手动发送请求,发送post请求,提升爬取效率,请求传参(meta),五大核心组件,中间件

    # settings 配置 UA USER_AGENT = 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, l ...

  4. Python爬虫教程-00-写在前面

    鉴于好多人想学Python爬虫,缺没有简单易学的教程,我将在CSDN和大家分享Python爬虫的学习笔记,不定期更新 基础要求 Python 基础知识 Python 的基础知识,大家可以去菜鸟教程进行 ...

  5. Python爬虫教程-01-爬虫介绍

    Spider-01-爬虫介绍 Python 爬虫的知识量不是特别大,但是需要不停和网页打交道,每个网页情况都有所差异,所以对应变能力有些要求 爬虫准备工作 参考资料 精通Python爬虫框架Scrap ...

  6. Python爬虫教程-13-爬虫使用cookie爬取登录后的页面(人人网)(下)

    Python爬虫教程-13-爬虫使用cookie爬取登录后的页面(下) 自动使用cookie的方法,告别手动拷贝cookie http模块包含一些关于cookie的模块,通过他们我们可以自动的使用co ...

  7. Python爬虫教程-12-爬虫使用cookie爬取登录后的页面(人人网)(上)

    Python爬虫教程-12-爬虫使用cookie(上) 爬虫关于cookie和session,由于http协议无记忆性,比如说登录淘宝网站的浏览记录,下次打开是不能直接记忆下来的,后来就有了cooki ...

  8. 一个简单的python爬虫,爬取知乎

    一个简单的python爬虫,爬取知乎 主要实现 爬取一个收藏夹 里 所有问题答案下的 图片 文字信息暂未收录,可自行实现,比图片更简单 具体代码里有详细注释,请自行阅读 项目源码: # -*- cod ...

  9. Python爬虫教程-34-分布式爬虫介绍

    Python爬虫教程-34-分布式爬虫介绍 分布式爬虫在实际应用中还算是多的,本篇简单介绍一下分布式爬虫 什么是分布式爬虫 分布式爬虫就是多台计算机上都安装爬虫程序,重点是联合采集.单机爬虫就是只在一 ...

随机推荐

  1. LeetCode 983. Minimum Cost For Tickets

    原题链接在这里:https://leetcode.com/problems/minimum-cost-for-tickets/ 题目: In a country popular for train t ...

  2. 思科ASA基本配置

    ------------恢复内容开始------------ ASA基本配置 ciscoasa#show running-config        //讲解已作的默认配置 ciscoasa#conf ...

  3. CLR内部异常(上)

    当我们提到CLR里的“异常”,要注意一个很重要的区别.有通过如C#的try/catch/finally暴露给应用程序,并由运行时提供机制全权实现的托管异常.也有运行时自己使用的异常.大部分运行时开发人 ...

  4. vault 使用 中间ca 进行证书管理

    使用vault 进行pki 管理是很方便的,以前测试的都是由根证书进行证书签发,这次使用中间ca 进行签发 所以会有一个证书连 测试使用docker-compose 运行 环境准备 docker-co ...

  5. 设置make为内部命令

    在Windows中下载Dev-cpp,配置环境变量,在MinGW64\bin下的mingw32-make.exe改名为make.exe,即可在命令行中使用make命令.

  6. CSS链接伪类:超链接的状态

    一.状态: a:link{属性:值;} 链接默认状态 a:visited{属性:值;} 链接访问之后的状态 a:hover{属性:值;} 鼠标放到链接上显示的状态 a:active{属性:值;} 链接 ...

  7. C# await async Task

    //原文:https://www.cnblogs.com/yan7/p/8401681.html //原文:https://www.cnblogs.com/s5689412/p/10073507.ht ...

  8. Codevs 2009 大dota英雄 2013年省队选拔赛辽宁(状压DP)

    2009 大dota英雄 2013年省队选拔赛辽宁 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 大师 Master 题目描述 Description 话说退役后的生活好无聊啊,以 ...

  9. 洛谷P1577 切绳子题解

    洛谷P1577 切绳子题解 题目描述 有N条绳子,它们的长度分别为Li.如果从它们中切割出K条长度相同的 绳子,这K条绳子每条最长能有多长?答案保留到小数点后2位(直接舍掉2为后的小数). 输入输出格 ...

  10. CSS3 之书页阴影效果

    视觉如下: CSS3 之书页阴影效果: <html> <head> <meta charset="UTF-8"> <title>书页 ...