初识html及网络爬虫概念
网络爬虫
- HTML超文本标记语言
- HTTP协议
- 简单的网络请求
- python模块模拟浏览器发送请求
- 爬虫小案例
爬虫简介
我们一般情况
都是通过浏览器正常访问服务端获取资源浏览器展示给用户看
爬虫
模拟浏览器发送请求 获取网页源数据 内部自动解析处理(目标数据) 存放于数据库中
好不夸张的概括一下
互联网就像是蜘蛛网,而爬虫就像是网上的蜘蛛
理论情况下只要给我们一个落脚点,我们就可以顺着互联网将互联网上面的所有的数据全部爬取下来
爬虫的价值
可以用最小的代价换取最丰厚的资源
请求方式
"""
URL:统一资源定位符(网址)
"""
1.get请求
get请求就类似于朝别人要数据
eg:浏览器地址栏输入网址回车朝该地址要数据
get请求携带数据的方式非常的具有特点,只能跟在网址的后面
url?username=jason&password=123
get请求携带的参数只能是不敏感的数据,并且get请求携带的数据大小有限制
最多好像不超过4KB左右
2.post请求
post请求就类似于你朝别人提交数据
eg:用户登录要将你的用户名和密码发送给后端去数据库校验
post请求携带数据的方式是比较隐蔽的,是放在请求体里面的
数据相对来说比较安全,并且数据量较大
HTTP协议
超文本传输协议
规定了浏览器与服务端之间数据交互的格式
1.请求数据的格式
请求首行(请求方式 协议版本(HTTP/1.1) URL)
请求头(一堆key:value键值对)
请求体(post请求携带的数据)
2.响应数据的格式
响应首行(协议版本 状态码 描述)
响应头(一堆key:value键值对)
响应体(展示给用户看的页面)
3.响应状态码
用简单的数字来描述一串中文意思
1XX:服务端已经接收到了你的数据正在处理,你可以继续提交数据
2XX:请求已经响应成功 已经返回了想要的数据(200 OK)
3XX:重定向(原本想访问A页面但是莫名的跳转到了B页面)
4XX:请求错误(404请求资源不存在,403请求不符合条件)
5XX:服务器内部错误(代码出现bug了,机房着火了,服务器断电了...500)
HTML超文本标记语言
是构造网页的骨架
HTML的注释
<!--注释-->
学习HTML的时候所见即所得
包含HTML标签代码的文件后缀名都是.html结尾
如果一个文件的后缀名是.html结尾,那么说明该文件需要用浏览器打开
前端三剑客
1.HTML
构造网页的骨架
2.CSS
给骨架添加样式
3.JS
给骨架添加动态效果
文档结构
<html>
<head></head>
<body></body>
</html>
head内填入的内容基本都不是给人看的而是给浏览器看的
body内填入的内容就是展示给用户看的内容
HTML标签分类
1.双标签
<head></head>
2.自闭和标签
<img/>
head内常用标签(了解)
title 控制网页的标题
style 标签内部可以书写控制HTML样式的css代码
link 通过href属性可以引入外部css文件
script
1、标签内部可以直接书写js代码
2、通过src属性可以引入外部js文件
<meta name="keywords" content="meta总结,html meta,meta属性,meta跳转">
<meta name="description" content="老男孩教育Python学院">
body内常用标签
h1系列(h1~h6) 标题标签
p 段落标签
<s>删除</s>
<b>加粗</b>
<u>下划线</u>
<i>斜体</i>
<br> 换行
<hr> 分割线
标签分类
1.块儿级标签 h p br hr
独占一行
2.行内标签 s b u i
自身文本多大就占多大
常用符号
空格
<p> a > b </p>
<p> a < b </p>
<p> a & b</p>
<p> ¥99999999 </p>
<p> 版权© </p>
<p> 商标® </p>
布局标签
div
块儿级标签
span
行内标签
# div和span多用于页面的前期布局 用div先划定区域之后往区域内填充相应的内容即可
标签的嵌套
1.块儿级标签可以嵌套块儿级标签和行内标签 div
2.行内标签只能嵌套行内标签 span
3.p标签虽然是块儿级标签但是它只能嵌套行内标签
"""
因为前段页面是需要直接展示给用户看的,所以前段页面不会轻易的报错
哪怕你写的语法不规范也会最大努力的帮你去调整
"""
常见标签
<img src="111.jpg" alt="这是个妹纸" title="这是前女友">
src既可以放本地图片地址也可以放远程图片地址
alt当图片加载不出来的时候自动的提示
title鼠标悬浮在图片上之后自动的提示
height
width
如果你只指定一个另外一个会等比例缩放
同时指定的时候可能会导致图片失真
<a href="https://www.sogo.com" target="_self">点我有你好看~</a>
<a href="https://www.sogo.com" target="_blank">点我有你好看~</a>
target参数
默认在当前页面跳转
_blank新建页面跳转
列表标签
<ul>无序列表
<li>111</li>
<li>222</li>
<li>333</li>
</ul>
# 虽然本身很丑 但是调节完样式之后会非常的好看(只要是有规则的横向或者竖向排列基本上使用的都是无序列表)
<ol type="I"> # type用来控制顺序到底是按照什么来
<li>111</li>
<li>222</li>
<li>333</li>
</ol>
<dl> # 标题列表
<dt>标题1</dt>
<dd>内容1</dd>
<dt>标题2</dt>
<dd>内容1</dd>
<dd>内容2</dd>
</dl>
表格标签
# 应用场景就是用来展示多个数据的
先写结构
<table>
<thead></thead>
<tbody></tbody>
</table>
<table border="1"> # 如果想加一个表格先就用border
<thead>
<tr> #一个tr就表示一行
<th>ID</th> # th加粗
<th>用户名</th>
<th>年龄</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td> # td普通文本
<td>jason</td>
<td>18</td>
<td>
<a href="">编辑</a>
<a href="">删除</a>
</td>
</tr>
</tbody>
</table>
初识html及网络爬虫概念的更多相关文章
- python 网络爬虫概念与HTTP(s)协议
1. 爬虫相关概念 1.1 定义 爬虫就是通过编写程序模拟浏览器上网,然后让其去互联网上抓取数据的过程 1.2 主流语言实现爬虫优劣 php:可以实现爬虫.但是php在实现爬虫中支持多线程和多进程方面 ...
- python网络爬虫之初识网络爬虫
第一次接触到python是一个很偶然的因素,由于经常在网上看连载小说,很多小说都是上几百的连载.因此想到能不能自己做一个工具自动下载这些小说,然后copy到电脑或者手机上,这样在没有网络或者网络信号不 ...
- Python 网络爬虫基本概念篇
爬虫的概念 网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.这是百度百科对爬虫的定义,其实,说简单点,爬虫 ...
- 网络爬虫深究-初识HTTP和https常识
网络爬虫专题--HTTP基本原理 URI和URL.URN的关系 超文本 HTTP和HTTPS URI和URL 首先,我们来了解一下URI和URL,URI,即统一资源标志符,URL,即统一资源定位符. ...
- 03.Python网络爬虫第一弹《Python网络爬虫相关基础概念》
爬虫介绍 引入 之前在授课过程中,好多同学都问过我这样的一个问题:为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无论是从实际的 ...
- Python网络爬虫第一弹《Python网络爬虫相关基础概念》
爬虫介绍 引入 之前在授课过程中,好多同学都问过我这样的一个问题:为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无论是从实际的 ...
- Python爬虫《Python网络爬虫相关基础概念》
引入 之前在授课过程中,好多同学都问过我这样的一个问题:为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无论是从实际的应用还是从 ...
- 03,Python网络爬虫第一弹《Python网络爬虫相关基础概念》
爬虫介绍 引入 为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无论是从实际的应用还是从就业上. 我们都知道,当前我们所处的时代 ...
- 《Python网络爬虫相关基础概念》
爬虫介绍 引入 之前在授课过程中,好多同学都问过我这样的一个问题:为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无论是从实际的 ...
随机推荐
- python21day
内容回顾 re模块的常用方法 findall(正则,待匹配字符串,flag):返回所有匹配项的列表 search:返回一个变量,通过group取到第一个匹配项 match:从头开始找第一个,其他同se ...
- 阿里智能运维实践|阿里巴巴DevOps实践指南
编者按:本文源自阿里云云效团队出品的<阿里巴巴DevOps实践指南>,扫描上方二维码或前往:https://developer.aliyun.com/topic/devops,下载完整版电 ...
- python 小兵(12)模块1
序列化 我们今天学习下序列化,什么是序列化呢? 将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化. 为什么要有序列化模块: 比如,我们在python代码中计算的一个数据需要给另外一段程序使用 ...
- 如何把一个数组中的对象的key值相等的对象合成一个对象
比如这样一个数组:[{category:"中国梦",value:"10000"},{category:"有国才有家",value:" ...
- root登陆530 Permission denied、530 Login incorrect解决
感谢大佬:https://blog.51cto.com/3241766/2316986?source=dra 背景:由于云平台上22端口不对外放开,sftp使用不了,故选择ftp服务 操作系统版本: ...
- VC 获取多个mac地址
转载请注明来源:https://www.cnblogs.com/hookjc/ #include <IPHlpApi.h>#include <iostream>#pragma ...
- Java&Tomcat环境变量配置
版本匹配: Java PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序.我们需要把 jdk安装目录下的bin目录增加 ...
- 有关OPenCV的几个库函数的使用
转载请注明来源:https://www.cnblogs.com/hookjc/ 1) IplImage* cvCreateImage( CvSize size, int depth, int chan ...
- 微擎site.php函数以及路由连接
任务1: 微擎模块设计: module.php 规则类: 会调用module.php manifest.xml中业务菜单对应的模块 如果在site.php中没有相应的函数 比如 /web/index. ...
- 稳住,传输层里的TCP与UDP协议
传输层协议 1.TCP协议介绍及报文格式 2.TCP三次握手三次挥手 3.UDP协议介绍 1.传输层有两个协议:TCP(传输控制协议) UDP(用户数据协议) . TCP是面向连接的,可靠的进程到进 ...