当前位置: 首页 > news >正文

Python爬虫-网页认识

一、虚拟环境

安装Python的时候会自动给计算机安装一个Python环境,这个环境叫做系统环境;
一个计算机中除了系统环境一个还可以自己创建多个虚拟环境(虚拟环境只能在有系统环境存在的情况下创建)。

虚拟环境的存在可以让不同类型或者不同版本的第三方库分开管理。

使用虚拟环境的建议:1)实际工作中:一个项目对应一个虚拟环境,并且将虚拟环境放在项目中,一般用venv来命名;
2)学习的时候:一个类项目对应一个虚拟环境,将所有不同类型的虚拟环境集中管理,环境名称做到见名知意

二、认识网页

1. 前端开发的三大技术: html、css、js

  1. html: 负责网页内容(决定网页有什么的)
    html通过不同的标签给网页提供内容(标签提供内容的方式分为:标签内容、标签属性)

  2. css: 负责网页内容的样式和布局

  3. js: 负责网页内容变化

三、认识html标签

1.<!–html版本说明–>

<!DOCTYPE html>

2.最外层有个html标签代表整个网页, html标签中一个head标签和一个body标签。

head负责网页头部的显示,body负责网页主体内容的显示。
结构如下

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

</body>
</html>

3… html语法(标签语法)

html就是通过不同的标签给网页提供不同的内容,标签分为两种:

1)双标签

<标签名 属性名1=“属性值1” 属性名2=“属性值2” …>标签内容</标签名>

2)单标签

<标签名 属性名1=“属性值1” 属性名2=“属性值2” …> 或者 <标签名 属性名1=“属性值1” 属性名2=“属性值2” …/>

4.一些主要标签

  1. <h1></h1>标题,有1~6级
  2. <p></p>段落文本标签
  3. <span></span>行标签、
  4. <ul><ul>无序列表标签
  5. <li></li>列表元素标签
  6. <img src=“” alt=“” title=“”>图片标签
  7. <a href=“” target=“”>超链接标签

四、选择器

1. css语法

选择器{属性1:属性值1; 属性2:属性值2; …}

2. 选择器 - 选中目标标签

1)元素选择器:

直接将标签名作为一个选择器,选中指定的所有标签
p{} - 选中所有的p标签

2)id选择器:

在id属性值前面加#作为一个选择器,选中id属性值为指定值的标签(id属性在整个网页中是唯一的)
#p2{} - 选中id属性值为p2的标签

3)class选择器:

在class属性值前加.作为一个选择器,选中class属性值为指定值的所有标签
(不同的标签可以有相同的class值; 同一个标签可以有多个不同的class值)
.c1{} - 选中所有class属性值为c1的标签
.c1.c3{} - 选中class属性值同时为c1和c3的标签

4)后代选择器:

多个选择器用空格隔开作为一个选择器

5)子代选择器:

多个选择器用>隔开作为一个选择器

相关文章:

  • 面试官:深度不够,建议回去深挖
  • [ vulhub漏洞复现篇 ] Apache APISIX 默认密钥漏洞 CVE-2020-13945
  • 接口测试用例生成工具介绍及应用
  • C#接入 NPOI
  • 面试百问:项目上线后才发现bug怎么办?
  • SpringBoot+Vue实现前后端分离网上药店平台
  • Simulink 自动代码生成电机控制:基于Keil软件集成
  • LQ0103 子串分值【字符串】
  • 数据库实战经验分享(全量表,增量表,拉链表,流水表,快照表)
  • 【node.js从入门到精通】使用express创建web服务器,路由,进行中间件的创建链接路由及其他中间件
  • [附源码]Java计算机毕业设计SSM电力公司员工安全培训系统
  • stm32f4xx-ADC
  • Linux命令老是记不住?一篇文章帮你解决。Linux常用命令汇总
  • 基于SPSS的医疗医保费用数据分析预测(C#)
  • 2022年科协第二次硬件培训总结
  • android图片蒙层
  • CSS实用技巧
  • Electron入门介绍
  • gops —— Go 程序诊断分析工具
  • IndexedDB
  • Js基础——数据类型之Null和Undefined
  • MySQL Access denied for user 'root'@'localhost' 解决方法
  • Quartz实现数据同步 | 从0开始构建SpringCloud微服务(3)
  • React Native移动开发实战-3-实现页面间的数据传递
  • Sass Day-01
  • Shadow DOM 内部构造及如何构建独立组件
  • TCP拥塞控制
  • Terraform入门 - 1. 安装Terraform
  • vue+element后台管理系统,从后端获取路由表,并正常渲染
  • Vue官网教程学习过程中值得记录的一些事情
  • Web设计流程优化:网页效果图设计新思路
  • 闭包,sync使用细节
  • 大型网站性能监测、分析与优化常见问题QA
  • 电商搜索引擎的架构设计和性能优化
  • 后端_ThinkPHP5
  • 聊一聊前端的监控
  • 前端临床手札——文件上传
  • 数组的操作
  • 思考 CSS 架构
  • 为视图添加丝滑的水波纹
  • 由插件封装引出的一丢丢思考
  • UI设计初学者应该如何入门?
  • 阿里云ACE认证之理解CDN技术
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • ​业务双活的数据切换思路设计(下)
  • ()、[]、{}、(())、[[]]命令替换
  • (C语言)逆序输出字符串
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (生成器)yield与(迭代器)generator
  • (原創) 是否该学PetShop将Model和BLL分开? (.NET) (N-Tier) (PetShop) (OO)
  • (原創) 系統分析和系統設計有什麼差別? (OO)
  • (转)VC++中ondraw在什么时候调用的
  • (转载)在C#用WM_COPYDATA消息来实现两个进程之间传递数据
  • (自用)learnOpenGL学习总结-高级OpenGL-抗锯齿