美文网首页
第0关 认识爬虫

第0关 认识爬虫

作者: 夕颜00 | 来源:发表于2020-07-07 17:37 被阅读0次

1、初始爬虫

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

2、明晰路径

2-1、浏览器工作原理


image.png

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

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

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

2-2、爬虫工作原理

image.png

(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上。

image.png

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

image.png

①、response.status_code

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

image.png

②、response.content

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

out = "E:/Script/python/风变编程_爬虫/0-5关/练习/0/ppt.jpg"
res = requests.get("https://res.pandateacher.com/2018-12-18-10-43-07.png")
pic = res.content
photo = open(out,"wb")
photo.write(pic)
photo.close()

③、response.text

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

out_text = "E:/Script/python/风变编程_爬虫/0-5关/练习/0/三国演义.txt"
res = requests.get("https://localprod.pandateacher.com/python-manuscript/crawler-html/sanguo.md")
novel = res.text
print(type(novel))  #<class 'str'>
print(novel[:50])
with open(out_text,"w") as f:
    f.write(novel)

④、response.encoding

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

out_text = "E:/Script/python/风变编程_爬虫/0-5关/练习/0/三国演义.txt"
res = requests.get("https://localprod.pandateacher.com/python-manuscript/crawler-html/sanguo.md")
res.encoding='utf-8'
novel = res.text
with open(out_text,"w") as f:
    f.write(novel)

3-3、汇总图解

image.png

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代表禁止被访问。

response.content

response.text
这个属性可以把Response对象的内容以字符串的形式返回,适用于文字、网页源代码的下载

相关文章

  • 第0关 认识爬虫

    1、初始爬虫 爬虫,从本质上来说,就是利用程序在网上拿到对我们有价值的数据。 2、明晰路径 2-1、浏览器工作原理...

  • 爬虫2 BeautifulSoup

    第0关的requests库帮我们搞定了爬虫第0步——获取数据;第1关的HTML知识,是进行爬虫必不可少的背景知识,...

  • 第0关 认识爬虫-课后习题

    一、文本下载题目要求:获取文章《HTTP状态响应码》全部内容,并且打印出全文内容。获取数据:文本URL:https...

  • 第0关

    Python基础语法知识就好比『内功』,只有深厚的『内功』才能更好地领悟和掌握各路招式。此时,我想起了尼采在《查拉...

  • Python爬虫视频教程

    ├─第1章【第0周】网络爬虫之前奏│ ├─第1节“网络爬虫”课程内容导学│ │ 第1部分全课程内容导...

  • 0-3关知识点

    Python小课《0-3关》知识点 第0关 [if !supportLists]l[endif]练习答案: 打印皮...

  • Python 爬虫零基础教程(0):简介及准备

    其他的教程往往从语法开始,而我们直接开始爬虫,语法等知识边做边学。这第0篇我们简单介绍下爬虫和编程工具。 爬虫是什...

  • Python Challenge 第0关

    Python Challenge 刷某乎的时候看到有推荐python编程跳转,感觉挺好玩的,就刷了一些,写篇帖子记...

  • 认识爬虫

    前言 我的爬虫笔记 经常看别人通过爬虫分析数据,很有意思,来了兴趣,就开始了爬虫之路。 爬虫 爬虫,即网络爬虫,大...

  • 认识爬虫

    图片来自风变科技 一, 什么是爬虫? 网络爬虫又名网络蜘蛛(web crawler→spider),是一种自动浏览...

网友评论

      本文标题:第0关 认识爬虫

      本文链接:https://www.haomeiwen.com/subject/sdqzqktx.html