第 0 关、初识爬虫

1、初始爬虫

爬虫,从本质上来说,就是利用程序在网上拿到对我们有价值的数据。

2、明晰路径

2-1、浏览器工作原理

(1)解析数据:当服务器把数据响应给浏览器之后,浏览器并不会直接把数据丢给我们。因为这些数据是用计算机的语言写的,浏览器还要把这些数据翻译成我们能看得懂的内容;

(2)提取数据:我们就可以在拿到的数据中,挑选出对我们有用的数据;

(3)存储数据:将挑选出来的有用数据保存在某一文件/数据库中。

2-2、爬虫工作原理

(1)获取数据:爬虫程序会根据我们提供的网址,向服务器发起请求,然后返回数据;

(2)解析数据:爬虫程序会把服务器返回的数据解析成我们能读懂的格式;

(3)提取数据:爬虫程序再从中提取出我们需要的数据;

(4)储存数据:爬虫程序把这些有用的数据保存起来,便于你日后的使用和分析。

3、体验爬虫

3-1、requests.get()

①、安装 requests 库

  • Mac电脑里打开终端软件(terminal),输入pip3 install requests,然后点击 enter;
  • Windows电脑里叫命令提示符(cmd),输入pip install requests 。

提示:往后安装其他库时与上方类似,pip install 模块名

②、requests 库作用

requests 库可以帮我们下载网页源代码、文本、图片,甚至是音频。其实,“下载”本质上是向服务器发送请求并得到响应。

③、requests 库使用

自动检测

res = requests.get('URL')

requests.get 是在调用requests库中的get()方法,它向服务器发送了一个请求,括号里的参数是你需要的数据所在的网址,然后服务器对请求作出了响应。我们把这个响应返回的结果赋值在变量res上。

3-2、Response对象的常用属性

①、response.status_code

打印 response 的响应状态码,以检查请求是否成功。

②、response.content

把 Response 对象的内容以二进制数据的形式返回,适用于图片、音频、视频的下载。

③、response.text

把 Response 对象的内容以字符串的形式返回,适用于文字、网页源代码的下载。

④、response.encoding

能帮我们定义Response对象的编码。(遇上文本的乱码问题,才考虑用res.encoding)

3-3、汇总图解

4、爬虫伦理

4-1、Robots 协议

Robots 协议是互联网爬虫的一项公认的道德规范,它的全称是“网络爬虫排除标准”(Robots exclusion protocol),这个协议用来告诉爬虫,哪些页面是可以抓取的,哪些不可以。

4-2、协议查看

(1)在网站的域名后加上/robots.txt就可以了。如淘宝的robots协议 ( http://www.taobao.com/robots.txt);

(2)协议里最常出现的英文是Allow和Disallow,Allow代表可以被访问,Disallow代表禁止被访问。

(0)

相关推荐

  • 你要偷偷的学Python,然后惊呆所有人(第七天)

    标题无意冒犯,就是觉得这个广告挺好玩的 文章目录 前言 欢迎来到我们的圈子 初见爬虫 为什么是爬虫 通用爬虫架构 爬虫的工作步骤 优秀爬虫的特性 1.高性能 2.可扩展性 3.健壮性 4.友好性 爬虫 ...

  • 一文告诉你,爬虫技术到底违不违法,怎么用才合法?

    近几年来,因为开发者使用爬虫技术锒铛入狱的案例越来越多. 2015年,某公司授意五名程序员,利用网络爬虫获取一公司服务器的公交车行驶信息.到站信息等数据.这五名程序员需承担连带责任. 2019年,某公 ...

  • 一起学爬虫(Python) — 02

    一起学爬虫(Python) - 19 年轻人,进来学自动化 今天要学会爬 requests模块 什么是requests模块 如何安装requests模块 怎么用requests模块 实战! reque ...

  • 利用python抓取页面数据

    利用python抓取页面数据

  • 入门爬虫?一文搞定!

    为了感谢大家对"Python客栈"的关注与支持,我们每天会在留言中随机抽取三位粉丝发放6.6元小红包.快来参与吧! 文章分三个个部分 两个爬虫库requests和selenium如 ...

  • Python爬虫:爬取需要登录的网站

    不少伙伴学爬虫,这就出一期Python爬虫教程,文末总结的有视频教程,自己按需学习哈! 爬虫在采集网站的过程中,部分数据价值较高的网站,会限制访客的访问行为.这种时候建议通过登录的方式,获取目标网站的 ...

  • 基于golang分布式爬虫系统的架构体系v1.0

    基于golang分布式爬虫系统的架构体系v1.0 一.什么是分布式系统 分布式系统是一个硬件或软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统.简单来说就是一群独立计算机 ...

  • 关 于 秦 始 皇 兵 马 俑,你不 知 道 的1 0 大 惊 人事 实

    兵马俑被认为是20世纪最伟大的发现之一,并闻名于世.但是你知道是谁建造的吗?说到这个我不禁想起之前韩国说到的是他们韩国的功劳,相信很多人和我一样感到非常无语甚至有点想笑,世界第八大奇迹秦兵马俑毫无疑问 ...

  • 爬虫精进第3关常见问题

    问题1.豆瓣电影无评论 豆瓣这一关的练习过程中,豆瓣网站的电影是不断更新的,有些豆瓣电影会出现没有评论语的情况: 报错信息"AttributeError: 'NoneType' object ...

  • 爬虫精进0

    第0关 练习-文章下载-参考 题目要求:获取文章[<HTTP状态响应码>]全部内容,并且打印出全文内容. 文本URL: https://localprod.pandateacher.com ...

  • thinkphp框架开发 微商新零售v2.0.8 闯关派单工具

    thinkphp框架开发 微商新零售v2.0.8 闯关派单工具 评分规则 可封装成APP thinkphp框架开发 微商新零售v2.0.8 闯关派单工具 评分规则 hinkphp框架开发 微商新零售v ...

  • 7:0战胜关岛,关岛在哪?二战时它被日军称为“太平洋防波堤”

    5月30日,2022年卡塔尔世界杯亚洲区预选赛中国队以7:0的比分战胜了关岛队.首先祝贺中国队获得胜利!不过估计有不少朋友会问,这个关岛他是谁?他在哪儿? 要知道,太平洋战争时期,因为特殊的地理位置, ...

  • 玖富数科闯关IPO  开启科技金融2.0新阶段

    来源:懂懂笔记 美国东部时间8月15日,中国金融科技公司玖富数科(股票代码为JFU)正式登陆纳斯达克证券交易所.上市首日,玖富数科以9.58美元微涨报收. 玖富数科是一家数字金融账户平台,成立于200 ...

  • 新娱科闯关港股,花1.52亿做74款游戏,市占率只有0.1%

    近日,新娱科控股有限公司(以下简称"新娱科")向港交所再次递交招股书.这是其自4月23日递表失效之后的又一次递表. 集团于2014年首次开展业务,在中国从事电脑.电脑配件及电子产品 ...

  • 初识2.0

    初识2.0