爬虫的简单介绍

部署运行你感兴趣的模型镜像

1.通讯协议

1.1 端口
端口分为两种

  • 物理上的端口 :ADSL Modem、集线器、交换机、路由器用 于连接其他网络设备的接口,如RJ-45端口、SC端口等等
  • 逻辑上的端口:TCP/IP协议中的端口,端口号的范围从0到65535。用于识别特殊服务,如浏览网页服务的80端口,用于FTP服务的21端口

1.2 通讯协议

  • 国际组织定义的通用通讯协议为TCP/IP 协议
  • 所谓协议:就是计算机网络通信过程中所必须遵守的规定和规则
  • HTTP 又叫做超文本传输协议 ,它的端口号是80

2. 网络模型

在这里插入图片描述
在这里插入图片描述
2.1 HTTPS 是什么

  • HTTPS = HTTP + SSL 。HTTPS 就是在HTTP的基础上加上SSL信息保护壳。加密工作就是由SSL来完成的

2.2 SSL 是什么

  • SSL(安全套接字) 协议是web浏览器和web服务器之间安全信息交换的协议,提供的安全服务:鉴别和保密
    在这里插入图片描述

3.爬虫的介绍

3.1什么是爬虫

  • 网络爬虫(又被成为网络蜘蛛、网络机器人,在FOAF社区中,更经常的被称为网页追逐者)爬虫是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本
    3.2 为什么需要爬虫?
  • 学习爬虫可以私人定制一个搜索引擎,并且可以对搜索引擎的数据采集工作原理进行更深次地理解
  • 大数据时代,要进行数据分析,首先要有数据源,而学习爬虫,可以让我们获得更多的数据源,并且这些数据源可以按照我们的目的去进行采集,可以过滤掉一些不需要的信息
  • 就业的角度来说,爬虫工程师是紧缺的人才,薪资待遇普遍较高,深层次的掌握这门技术,对就业来说,是非常有利的

3.3 企业获取数据的方式

  • 公司自有的数据
  • 第三方平台购买
  • 爬虫工程师爬取的数据

3.4Python做爬虫的优势

  • PHP对多线程,异步支持不太好
  • Java 代码量大,代码笨重
  • C/C++ 代码量大,代码难以编写
  • Python:支持模块多、代码简洁、开发效率高(scrapy框架 )

3.5 爬虫的分类

  • 通用网络爬虫: 百度,Google,雅虎
  • 聚焦网络爬虫:根据既定的目标有选择的抓取某一特定主题内容
  • 增量式网络爬虫:指对下载网页采取增量式更新和只爬新产生的或者已经发生变化的网页爬虫
  • 深层网络爬虫:指那些大部分内容不能通过静态网页链接获取的、隐藏在搜索表单后的,只有用户提交一些关键词才能获得的页面 例如:用户登录注册才能访问的页面

4.爬虫的几个概念

4.1 get和post

  • GET:查询参数会在url上显示出来
  • POST:查询参数和需要提交的数据隐藏在form表单里面,不会在 url 上显示出来

4.2 URL 组成部分

  • URL:统一资源定位符
  • https://new.qq.com/omn/TWF20200/TWF2020032502924000.html
  • https:协议
  • new.qq.com: 域名
  • port:端口号,出现在域名的后面,可以省略
  • TWF20200/TWF2020032502924000.html:访问资源的路径
  • #anchor: 锚点用前端在做页面定位的
  • 注意:浏览器在请求这个url 的时候会对url 进行编码(除却英文字母,数字和部分表标识 其他的全部使用% 加 十六位进制编码)
  • https://tieba.baidu.com/f?ie=utf-8&kw=%E6%B5%B7%E8%B4%BC%E7%8E%8B&fr=search
  • %E6%B5%B7%E8%B4%BC%E7%8E%8B = 海贼王

4.3 User-Agent用户代理

  • 作用:记录用户的浏览器,操作系统等,为了让用户更好的获取页面的效果

4.4 refer

  • 表名当前这个请求是从哪个url 过来的,一般用作反爬

4.5 状态码

  • 200:请求成功
  • 301:永久重定向
  • 302:临时重定向
  • 403:服务器拒绝请求
  • 404:请求失败(服务器无法根据客户端的请求找到资源)
  • 500:服务器内部请求

5. 开发者工具

  • 在这里插入图片描述
  • Elements:网页的源代码提取数据和分析数据(有些数据是经过特殊处理的所以并不是都是准确的)
  • Console:控制台(打印信息)
  • Source:信息来源(整个网站加载的文件)
  • Network:网站工作能够看到很多的网页请求

您可能感兴趣的与本文相关的镜像

Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

Python网络爬虫技术是指利用Python编程语言,自动化地从互联网上获取和提取各种类型的信息的一种技术。网络爬虫通常用于对网页进行解析,从而获取网页中所包含的数据,并提供给用户使用或进一步处理。 采用Python编写网络爬虫的优势在于其简洁明了的语法和丰富的第三方库支持。Python拥有一系列强大的库和框架,如BeautifulSoup、Scrapy等,它们可以帮助我们更轻松地实现各种网络爬取操作。 在Python网络爬虫技术中,一般的步骤包括以下几个方面: 1. 发送HTTP请求:使用Python的requests库可以发送HTTP请求,获取网页源代码。通过模拟浏览器行为,请求网页并获得响应。 2. 解析网页:通过解析网页源代码,提取所需的数据。可以使用Python的正则表达式,或者更常用的是BeautifulSoup库,它可以解析HTML或XML,使得网页结构化处理更加方便。 3. 数据提取和处理:根据需求,提取所需数据,并进行相应的处理。可以利用正则表达式、XPath或CSS选择器等方法,从网页中抽取出特定的信息。 4. 存储数据:将提取的数据保存到本地文件或数据库中。可以使用Python的文件操作或数据库操作库进行存储。 5. 自动化运行和持续更新:可以使用定时任务或事件触发等方式,编写代码实现网络爬虫的自动化运行和持续更新。 需要注意的是,网络爬虫技术需要遵守相关法律法规,尊重网站的规则和隐私,合法使用爬取的数据,避免对被爬取网站造成过大的负担。在进行网络爬虫时,需要注意合理设置爬取间隔,并避免给被爬取网站带来过大的访问压力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值