爬虫学习-基本原理

决定从今天开始,每天花30-60分钟学习爬虫,直到掌握基本用法。
21世纪10年代最后一个flag,不能倒。

爬虫的三个步骤:抓取、分析、存储。

抓取

requests
selenium 可以执行动作,如点击、下拉

解析

lxml
beautifulsoup4 (from bs4 import BeaytifulSoup)
tesserocr 图形验证码

存储

一些数据库,但我目前不需要太多的数据,暂时不用数据库

爬虫框架

直接用requests 、Selenium 等库写爬虫,如果爬取量不是太大,速度要求不高,是完全可以满足需求的。利用框架,我们可以不用再去关心某些功能的具体实现,只需要关心爬取逻辑即可。有了它们,可以大大简化代码盘,而且架构也会变得清晰,爬取效率也会高许多。

scrapy

conda install Scrapy

还要安装很多东西,比较复杂,用时再学

HTTP基本原理

URI:uniform resource identifier,统一资源标识符
URL:uniform resource locator,统一资源定位符
超文本:hypertext
HTTP:hyper text transfer protocol,超文本传输协议
HTTPS:hyper text transfer protocol over secure socket layer,HTTP加入了SSL层,安全版

请求

在浏览器中输入URL,回车后会返回内容,实际上是浏览器向网站所在的服务及发送了一个请求

请求方法

GET:请求的参数包括在URL里面,数据可以在URL里看到,请求提交的数据最多1024字节
POST:数据通过表单形式传输,保护在请求体中


image.png

请求的网址

即URL,可以唯一确定我们想请求的资源。

请求头

用来说明服务器要使用的附加信息


image.png

请求体

一般是POST请求中的表单数据

响应

响应状态码

200代表服务器正常响应;404代表页面未找到;500代表服务器内部发生错误

响应头

服务器对请求的应答信息

响应体

响应的正文书记,需解析的内容

网页基础

HTML:网页的基础架构,将不同类型的元素通过布局标签div嵌套组合而成
CSS:层叠样式表,网页页面排版样式标准
JavaScript:JS是一种脚本语言,交互和动画效果


image.png

CSS选择器

(#id
.class
标签名筛选
加空格 表示嵌套 不加是并列

代理的基本原理

使用代理伪装IP,以免被封。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。