爬虫基本基础知识讲解

一.什么是爬虫

     爬虫就像是一直蜘蛛一样 ,而互联网是就像是一张大大的蜘蛛网一样。简单的说爬虫就是请求网站并提取数据的自动化程序。

请求:我们打开浏览器输入关键词敲击回车,这就叫做是请求。我们做的爬虫就是模拟浏览器进行对服务器发送请求,然后获取这些网络资源。

提取:我们得到这些网络资源都是一些HTML代码,或者是一些文本文字。我们下一步做的工作就是在这些数据中提取出我们想要的东西。比如一个手机号。存在数据库或者文档里面。

自动化:程序就能代替人工不停的大量的进行提取数据。

二:爬虫的基本流程

1.发起请求:通过http库向目标站发起请求,即发送一个Request,请求可以包含额外的headers等信息,等待服务器响应。

2.获取响应的内容:如果服务器能正常的响应,会得到一个Request的内容便是所要获取的页面内容、类型可能有HTML,Json字符转,二进制数据等类型

3.解析内容:得到的内容可能是HTML可以用正则表达式,网页解析库进行解析。可能是json,可以直接转为json对象解析,可能是二进制数据,可以做保存或者进一步处理。

4.保存数据:保存格式多样化,可以存为文本,也可以保存至数据库,或者保存特定格式的文件。

三:什么是Request和Response

1.浏览器就发送消息给该网址所在的服务器,这个过程叫做HTTP Request。

2.服务器收到浏览器发送的消息后,能够根据浏览器发送消息的内容,做相应处理,然后把消息回传给浏览器。这个过程叫做HTTP Response。

3.浏览器收到服务器的Response信息后,会对信息进行相应处理,然后展示。

四:Request包含什么

1.请求方式:主要有Get,Post两种类型,另外还有Head,put,delete,options等。

最主要的就是get和pose两种请求方式。pose请求的方式大多是用在登陆的请求上,他将许多的请求参数封装在一起,进行保密。get则是需要很多的参数才可以,用于搜索。

2.请求URL

URL全称统一资源定位符,如一个网页文档、一张图片,一个视频等都可以用URL唯来确定。

3.请求头:包含请求时的头部信息,如User-Agent,Host,Cookie等信息。

五:Response包含什么

1.响应状态:200代表成功,300以上的状态时用来做页面跳转的,400以上是用来说明服务器找不到资源的,500以上时表示服务器处理错误。

2.响应头:如内容的类型,内容的长度,服务器信息,,设置Cookie信息等等

3.响应体:最主要的部分,包含了请求资源的内容,如网页的HTML,图片二进制数据等

 

  • 0
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当涉及到编写Python爬虫时,有一些核心概念和技术是必不可少的。以下是一些必备的知识点: 1. HTTP协议:了解HTTP请求和响应的工作原理,包括请求方法、状态码、头部信息等。 2. HTML解析:熟悉HTML标记语言的基本结构和常见标签,以及如何使用HTML解析库(如BeautifulSoup、lxml等)来提取网页中的数据。 3. CSS选择器和XPath:掌握CSS选择器和XPath的基本语法,用于在HTML文档中定位和提取特定的元素。 4. 正则表达式:了解正则表达式的基本语法,可以用它来匹配和提取文本中的特定模式。 5. 网络请求库:熟悉Python中常用的网络请求库,如requests、urllib等,用于发送HTTP请求并处理响应。 6. Cookie和Session管理:了解Cookie和Session的概念,并学会使用相应的方法来管理和处理它们。 7. 数据存储:学习如何将爬取到的数据存储到文件(如CSV、JSON)或数据库中,以便后续处理和分析。 8. 反爬虫机制:了解网站常用的反爬虫机制,如验证码、IP封禁等,以及相应的应对策略,如使用代理、设置请求头部信息等。 9. 频率控制和并发处理:合理控制爬取的频率,以避免给目标网站带来过大的负载。并学会使用多线程或异步库(如concurrent.futures、asyncio等)来提高爬取效率。 10. 法律和道德问题:遵守爬取网站的相关规定和法律法规,尊重网站的隐私和使用条款。 除了以上知识点,编写Python爬虫时还需要具备一定的编程基础和调试能力。同时也需要有良好的网络素养和信息安全意识。综合运用这些知识和技能,才能编写出高效、稳定、可靠的爬虫程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值