初识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网络爬虫相关基础概念》
爬虫介绍 引入 之前在授课过程中,好多同学都问过我这样的一个问题:为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无论是从实际的 ...
随机推荐
- Kubernetes 证书默认1年过期时间修改
使用过的kubeadm搭建K8s集群的朋友知道,默认自动生成的证书有效期只有 1 年,因此需要每年手动更新一次证书,这种形式显然对实际生产环境来说很不友好:因此下面教给大家修改这个过期时间的终极方法. ...
- Spring系列7:`autowire`自动装配怎么玩
回顾 前几篇我们介绍各种依赖依赖注入,都是显式指定的,配置明确但同时也有些繁杂和重复."很多发明的出发点,都是为了偷懒,懒人是推动社会进步的原动力".Spring 提供了自动注入依 ...
- Java当中“+=”和“=+”的区别
"+="会自动类型强制转换! 隐含了一个强制类型转换! 一 string a1 = "9"; int a2 = 10; a1+=a2; a1=a1+a2; 不会 ...
- CNN-卷积神经网络简单入门(2)
在上篇中,对卷积神经网络的卷积层以及池化层模块进行了简单的介绍,接下来将对卷积神经网络的整个运作流程进行分析,以便对CNN有个总体上的认知和掌握. 如下图,卷积神经网络要完成对图片数字的识别任务.网络 ...
- ApacheCN 计算机视觉译文集 20211110 更新
OpenCV3 和 Qt5 计算机视觉 零.前言 一.OpenCV 和 Qt 简介 二.创建我们的第一个 Qt 和 OpenCV 项目 三.创建一个全面的 Qt + OpenCV 项目 四.Mat和Q ...
- 使用IndexedDB缓存给WebGL三维程序加速
前言 使用webgl开发三维应用的时候,经常会发现三维场景加载比较慢,往往需要等待挺长时间,这样用户的体验就很不友好. 造成加载慢的原因,主要是三维应用涉及到的资源文件会特别多,这些资源文件主要是模型 ...
- having筛选结果集
题目要求:让你输出有两科及其以上挂科(60分及格)的学生的名单? name subject score 错误的做法: mysql> select name, count(scoure<60 ...
- PHP操作Mysql疑问?
1.Mysql控制台乱码 set character_set_results = 'utf8';
- MySQL 数据库SQL语句——高阶版本1
MySQL 数据库SQL语句--高阶版本 实验准备,数据表配置 mysql -uroot -p show databases; create database train_ticket; use tr ...
- CSS解决父级边框坍塌的问题
1. 浮动元素后面增加空的div 首先在父级标签内添加如下<div>标签 <div id="clear"></div> 然后在CSS中对该标签进 ...