只要求大概了解,并不需要自己能够代码实现
Web的基本概念
C/S架构:Client与Server,客户端与服务器架构
B/S架构:Browser与Server,浏览器与服务器架构
HTTP协议(超文本传输协议)
我们只需会使用协议中的大概意义和功能,并不用完全了解是如何实现的。
超文本:指含有指向其他资源链接的文本,不仅仅是文字,还有多媒体,视频,图片等。
协议:如何让不同厂商之间生产的计算机能够互相顺畅通信?总要有人站出来,约定一个共同的标准。大家都来遵守,这就是网络协议
只有客户端能主动联系服务端,服务端不能主动联系客户端。
无连接:指每次连接只能处理一个请求,处理完请求后,客户端和服务端断开。
无状态:HTTP协议不具备保存之前发送过的请求或响应的功能。现在我们如果登录过一个网站,下一次登录时,通常还是登录好的状态(因为存在Cookie技术),若是无状态,则表示还需要重新登陆。
HTTP请求协议与响应协议
请求协议:1.请求方法2.请求URL(网址)3.HTTP协议及版本4.报文头5.报文体
请求头(报文头):客户端向服务器介绍自己客户端的基本信息。具体的请求信息并不需 要具体去记,之后遇到哪个记哪个就可以
请求体(报文体):客户端要发送的一些数据
请求方式:get与post请求。get请求的数据大小有限制,而post请求的大小没有限制。
响应协议:
响应头和响应体:与请求头与请求体类似。
响应状态码:可以知道服务端是否正常受理了请求
HTML结构和标签格式
里面的标签通常是成对出现的
HTML常用标签
因为是给后面爬虫做铺垫,所以并不用了解太深
<h1> </h1> … <h6> </h6>#标题标签
<p> </p>#段落标签
<br/>#换行标签
<div></div>
<img src="xxxxxx" 属性2="xxxxxx">#图像标签
< a href="跳转目标" target="目标窗口的弹出方式">文本或图像</a>#超链接标签
#列表标签
<ul></ul>
<ol></ol>
#表格标签
<table></tabe>
<tr></tr>#行
<td></td>#列
#表单标签
<form></form>
Cookie概述(基本了解)
可以理解为服务端向客户端发送的信息,下次访问同一个服务器时浏览器会自带这些键值对,且储存在客户端浏览器中,像一些记住密码等功能就是基于cookie实现的。
CSS(只需了解)
标签只是给页面做个框架,而CSS是给页面做“美颜”的。
基本语法
选择器:哪个HTML 元素应当是被选为应用规则中的 CSS 属性值的方式
属性:样式表定义如何显示HTML 元素,就像 HTML 中的字体标签和颜色等属性
基本选择器
Javascript
首先要知道Javascript与java是没有关系的
JavaScript 是一种脚本编程语言,它可以在网页上实现复杂的功能,网页展现给你的不再是简单的静态信息,比如在进行登录页面手机号时,当你输入的手机号位数不够,但又想输入密码时,页面将阻止你输入密码,并提醒你手机号位数不够。
或者例如以下的功能
当你什么没有输,又点击登录功能时,它会产生提示。也可以是js实现的
js在后面网页逆向和应用逆向会广泛运用
js基本数据类型
很多性质都跟python很像,只是有些调用,格式不一样(比如序列化和反序列化,正则表达式) 。调用的格式和函数名感觉是python和c(比如for循环,switch格式)结合。
eval函数(对于爬虫学习较重要)
eval本身在js中应用的并不多,但是很多网址会利用eval来完成反爬操作
现在网上有不少解密工具,直接使用即可
Jquery框架
Jquery是js的一个框架
jq功能跟js基本一样但是编码格式和编码风格不一样,jq的可读性较差
var tag=document.getElementById('d1');#js实现
$("#d1")#jq实现
上面两行代码实现的是同一功能,明显可以看出来js实现的代码可以直观看出来其功能。
Ajax请求(重点)
上面的js,jq不怎么了解,造成的影响较小,但Ajax却十分重要。
但还是只需要看懂就行,不要求能够实现编写
大多数网页滑倒最底部,会存在进入下一页的按钮,当进入下一页时,页面网址如果还是不变,就叫做局部刷新,反之为全局刷新。
简言之,在不重载整个页面的情况下,Ajax通过后台加载数据,并在网页上进行显示,用来实现局部刷新。