安阳河南网站建设,房地产开发公司网站建设方案,怎么在百度发布自己的文章,做什网站好本文目录#xff1a; 一、爬虫的基本概念1.为什么要学习爬虫1.1 数据的来源1.2 爬取到的数据用途 2.什么是爬虫3. 爬虫的更多用途 二、爬虫的分类和爬虫的流程1.爬虫的分类2.爬虫的流程3.robots协议 三、爬虫http和https1.http和https的概念2.浏览器发送HTTP请求的过,2.1 http… 本文目录 一、爬虫的基本概念1.为什么要学习爬虫1.1 数据的来源1.2 爬取到的数据用途 2.什么是爬虫3. 爬虫的更多用途 二、爬虫的分类和爬虫的流程1.爬虫的分类2.爬虫的流程3.robots协议 三、爬虫http和https1.http和https的概念2.浏览器发送HTTP请求的过,2.1 http请求的过程2.2 注意: 3.HTTP请求的形式4.HTTP常见请求头5.响应状态码(status code) 获取免费代理ip 一、爬虫的基本概念
1.为什么要学习爬虫
如今人工智能大数据离我们越来越近很多公司在开展相关的业务但是人工智能和大数据中有一个东西非常重要那就是数据但是数据从哪里来呢
首先我们来看下面这个例子 这是微博的微指数的一个截图他把在微博上的用户的微博和评论中的关键词语做了提取然后进行了统计然后根据统计结果得出某个词语的流行趋势之后进行了简单的展示
类似微指数的网站还有很多比如百度指数阿里指数360指数等等这些网站有非常大的用户量他们能够获取自己用户的数据进行统计和分析
那么对于一些中小型的公司没有如此大的用户量的时候他们该怎么办呢
1.1 数据的来源
去第三方的公司购买数据(比如企查查)去免费的数据网站下载数据(比如国家统计局)通过爬虫爬取数据人工收集数据(比如问卷调查)
在上面的来源中人工的方式费时费力免费的数据网站上的数据质量不佳很多第三方的数据公司他们的数据来源往往也是爬虫获取的所以获取数据最有效的途径就是通过爬虫爬取
1.2 爬取到的数据用途 通过前面的列子能够总结出爬虫获取的数据的用途
进行在网页或者是app上进行展示进行数据分析或者是机器学习相关的项目
2.什么是爬虫
网络爬虫又被称为网页蜘蛛网络机器人就是模拟浏览器发送网络请求接收请求响应一种按照一定的规则自动地抓取互联网信息的程序。
原则上,只要是浏览器(客户端)能做的事情爬虫都能够做
3. 爬虫的更多用途 12306抢票 网站上的投票 短信轰炸
二、爬虫的分类和爬虫的流程
了解 爬虫分类记忆 爬虫流程了解 robots协议
1.爬虫的分类 在上一小结中我们介绍爬虫爬取到的数据用途的时候给大家举了两个例子其实就是两种不同类型的爬虫 根据被爬网站的数量的不同我们把爬虫分为 通用爬虫 通常指搜索引擎的爬虫https://www.baidu.com 聚焦爬虫 针对特定网站的爬虫
2.爬虫的流程 请思考如果自己要实现一个和百度新闻一样的网站需要怎么做 爬虫的工作流程 向起始url发送请求并获取响应对响应进行提取如果提取url则继续发送请求获取响应如果提取数据则将数据进行保存
3.robots协议 在百度搜索中不能搜索到淘宝网中某一个具体的商品的详情页面这就是robots协议在起作用 Robots协议网站通过Robots协议告诉搜索引擎哪些页面可以抓取哪些页面不能抓取但它仅仅是互联网中的一般约定
三、爬虫http和https 在发送请求获取响应的过程中 就是发送http或https的请求获取http或https的响应
1.http和https的概念
HTTP 超文本传输协议默认端口号:80 HTTPS HTTP SSL(安全套接字层)即带有安全套接字层的超本文传输协议默认端口号443
HTTPS比HTTP更安全但是性能更低
2.浏览器发送HTTP请求的过, 2.1 http请求的过程 浏览器先向地址栏中的url发起请求并获取相应 在返回的响应内容html中会带有css、js、图片等url地址以及ajax代码浏览器按照响应内容中的顺序依次发送其他的请求并获取相应的响应 浏览器每获取一个响应就对展示出的结果进行添加加载jscss等内容会修改页面的内容js也可以重新发送请求获取响应 从获取第一个响应并在浏览器中展示直到最终获取全部响应并在展示的结果中添加内容或修改————这个过程叫做浏览器的渲染
2.2 注意:
但是在爬虫中爬虫只会请求url地址对应的拿到url地址对应的响应该响应的内容可以是htmlcssjs图片等
浏览器渲染出来的页面和爬虫请求的页面很多时候并不一样
所以在爬虫中需要以url地址对应的响应为准来进行数据的提取
3.HTTP请求的形式 这个图大家见过很多次那么在浏览器headers中点击view source来具体观察其中的请求行请求头部和请求数据是什么样子的
4.HTTP常见请求头
Host (主机和端口号)Connection (链接类型)Upgrade-Insecure-Requests (升级为HTTPS请求)User-Agent (浏览器名称)Accept (传输文件类型)Referer (页面跳转处)Accept-Encoding文件编解码格式Cookie Cookiex-requested-with :XMLHttpRequest (表示该请求是Ajax异步请求)
5.响应状态码(status code)
常见的状态码
200成功302临时转移至新的url307临时转移至新的url404找不到该页面500服务器内部错误503服务不可用一般是被反爬
记忆 http请求头的形式 GET /item/503/1227315?fraladdin HTTP/1.1Host: www.baidu.com记忆 http响应头的形式 : HTTP/1.1 200 OKConnection: keep-alive了解 http响应状态码 - 200成功- 302临时转移至新的url 获取免费代理ip