- 博客(25)
- 收藏
- 关注
原创 Py爬虫学习笔记:豆瓣读书Top250
项目分析先判定网页是否为静态网页分析每个书记对应的代码分析如何获取250本书籍项目实现实现第一页网页代码获取使用requests请求后,报错<Response [418]>,这是因为豆瓣将程序视为爬虫,因此拒绝访问。因此要将requests操作模拟为人为操作,设置了user_agent。import requestsfrom bs4 import BeautifulSoupuser_agent='Mozilla/5.0 (Macintosh; Intel Mac OS X
2021-05-13 10:31:37
166
原创 Py爬虫学习笔记:Beautiful Soup——find_all、select
find_all用来查询所有节点的方法案例1:查询所有的a标签from bs4 import BeautifulSouphtml = """<html> <head> <title>优课达</title> </head> <body> <a href="https://www.youkeda.com" alt="学得比别人好一点">优课达</a> <ul>
2021-04-21 16:38:21
336
1
原创 Py爬虫学习笔记:Beautiful Soup实战——认识Beautiful Soup
Beautiful SoupBeautiful Soup是一个可以从HTML或XML文件中提取数据的Python库环境安装使用pip install beautifulsoup4代码演示尝试使用一段简单的代码讲解Beautiful Soup的使用from bs4 import BeautifulSoup # 1. 引入BeautifulSoup解析库html = """<html> <head> <title>优课达</title>
2021-04-17 17:00:52
182
原创 Py爬虫学习笔记:静态页面正则爬虫——静态页面正则爬虫分析与实现
爬虫基本逻辑爬虫主体逻辑分为4部分人工查找承载信息的网站,本项目的目标是找到有王者荣耀英雄封面的网站分析网页类型(静态网页还是动态)网页内的元素都能在网页源代码中看到,这个网页就是静态网页使用网页解析器(本节课讲的正则表达式分析网页)提取需要的信息静态网页爬虫实现实现的思路使用requests库获取网页源代码使用正则表达式提取全部英雄区域内容使用正则表达式分别提取每个英雄封面和名称使用requests下载英雄封面1、获取网页源代码import reque
2021-03-28 16:56:35
143
原创 Py正则表达式学习笔记:常用函数——分组
我们把子表达式称为组,获取每个子表达式的匹配结果的过程,称为分组。Python中,re.match()、re.search()、re.finditer()返回的结果对象中,都能掉痛分组的方法,主要有三种1、整体结果group()方法用于获取整个表达式的结果。实际上我们前面的代码演示和习题中,已经用到了。matchObj.group()获取到的就是整个表达式的检索结果2、指定分组group()方法可以接受正整数参数,例如:group(2)对应第二个子表达式检索到的结果注意:group()等同于
2021-03-19 16:50:49
188
原创 Py正则表达式学习笔记:常用函数——替换方法、预编译
替换方法re库中提供了sub()方法,用于替换文本中的匹配表达式内容。方法的返回值是替换后的文本内容字符串。1、简单用法re.sub(pattern,repl,courceText)顾名思义:第一个参数是正则表达式;第二个参数是替换后的字符;第三个参数是源文本2、指定替换次数re.sub(pattern,repl,sourceText,count)第四个参数指定最大替换次数。第四个参数可以不写,不写意味着默认值为0,表示全部替换3、例子演示将日期格式为2021-03-18转换为2021
2021-03-18 11:30:33
173
原创 Py正则表达式学习笔记:常用函数——全量索引
所有结果列表re库中提供了findall()方法,在文本中查找匹配表达式的所有内容。其返回对象为字符串的列表re.findall(regex,text)所有结果的迭代器如果要知道每个匹配结果的具体信息,例如调用start()、end()等取得每个匹配结果的起止位置,就要用re库中的finditer()方法了。finditer()方法返回的是一个包含检索结果的迭代器代码演示import re line = 'I love dogs cats and others' rege.
2021-03-17 16:48:34
104
原创 Py正则表达式学习笔记:常用函数——单词检索、索引方法
单次检索单次检索就是在指定的文本中,用正则表达式查询是否有匹配的文本,并返回第一个结果1、检索第一个结果也就是说文本中包含至少一个正则表达式要求的内容使用Python中,re库里的search()方法2、开头检索match()方法只检查文本开头,如果文本不符合正则表达式,则匹配失败。re.match(regex,text)也是只有一个返回结果3、检索结果对象无论是match()还是search(),都会返回结果对象,而调用结果对象的group()方法取得匹配的内容。索引方法1、起始位
2021-03-17 11:53:13
403
原创 Py正则表达式学习笔记:特殊符号——贪婪与非贪婪
我们在使用限定词的时候可能会遇到一些问题。我们用表达式thought(.+)thought检索I thought a thought. But the thought I thought wasn't the thought I thought I thought.的结果为,相距最远的两个thought,给出了最多的结果贪婪模式尽量检索最多的酒哦,叫做贪婪模式。一般限定符和范围限定符默认都是贪婪模式。如上面的例子一样非贪婪模式尽量检索最少的结果,叫作非贪婪模式。在一般限定符和范围限定
2021-03-15 15:12:29
282
原创 Py正则表达式学习笔记:特殊字符——中括号表达式、限定符表达式
中括号表达式中括号表达式的核心作用是表示范围。有三种用法(1)区间范围[a-z]表示所有小写字母[A-Z]表示所有大写字母[0-9]表示数字比固定表达式\w、\d更加灵活,可以调整范围例子演示:验证用户名开头只能是数英文大小写字母import retext = "┊ ╋。Máì葬"regex = r'^[a-zA-Z0-9]'matchObj = re.search(regex, text)if matchObj: print('用户名 ' + text + ' 合法').
2021-03-15 12:02:49
582
原创 Py正则表达式学习笔记:特殊字符——原义字符、逻辑或条件、子表达式
原义字符在正则表达式前面多加一个反斜杠\,表示字符原义\\可以校验文本中的字符\\d可以校验文本中的字符串\d,不能校验数字\$可以校验文本中的字符$,不是表示文本结尾逻辑或条件逻辑或的表达式|,作用是检查是否满足多个条件之一如,手机号必须为:13、14、15、16、17、18、19开头等如何对此进行检查import retext = "13888887296"regex = r'^13|14|15|16|17|18|19'matchObj = re.search(regex.
2021-03-14 19:38:30
307
原创 Py正则表达式学习笔记:正则表达式基础—单词、数字、点
单词字符相关表达式\w:匹配包括下划线任何一个单词字符。可以匹配任意一个字母(A~Z、a~z)或数字(0~9)或下划线(_)\W:匹配任何一个非单词字符数字相关表达式\d:小写。匹配一个数字字符\D:大写。匹配一个非数字字符点表达式点(.)也是一个表达式,匹配除换行符(\n、\r)之外的任何单个字符,包括可以匹配制表符。要注意.与\S包含字符范围的区别演示import reregex = r'^\w'text = "┊ ╋。Máì葬"matchObj = re.search(.
2021-03-13 18:59:36
175
原创 Py正则表达式学习笔记:正则表达式基础—开头与结尾
^^表示字符串的开头,^+86表示字符串的开头必须是+86$$表示字符串结尾,+86$表示字符串结尾必须是+86使用案例import reregex = r'^\+86$'text = '+86'matchObj = re.search(regex, text)if matchObj: print(text + ' 是中国区号')else: print(text + " 不是中国区号")...
2021-03-13 16:38:18
287
原创 Py正则表达式学习笔记:正则表达式基础—空白与非空白符
空白字符\s(小写)匹配任何空白字符,包括空格、制表符、换页符等非空白字符\S(大写)匹配任何非空白字符使用案例import reregex = r'\S'text = ' 有人說我是靈劍派第一 表演藝術家,哈哈哈,希望給大家帶來好運'matchObj = re.search(regex, text)if matchObj: print(text + ' 包含非空白字符')else: print(text + " 全空白字符")这里插入代码片...
2021-03-13 15:25:05
648
原创 Py正则表达式学习笔记:正则表达式基础—回车、换行与制表符
换行符在正则表达式中,\n就表示换行符回车符在正则表达式中,\r就表示回车符制表符按下键盘的Tab键,就产生了制表符不同操作系统,制表符的宽度都不一样,通常是2个或4个、8个字符宽度其他的非打印字符表达式换行回车符、制表符都是最常见的空白字符,不常用的非打印字符有\f:匹配一个换页字符\v:匹配一个垂直制字符检查空白字符演示代码import reregex = r'\n'text = '''床前明月光,疑是地上霜。举头 望明月,低头思故乡。'''..
2021-03-13 15:15:25
4199
原创 Web前端基础笔记:第十章 CSS-背景
10.1 背景颜色渐变色/* 线性渐变(渐变方向 开始颜色 结束颜色) */background:linear-gradient(to right,#95ca47,#4dc891);渐变方向渐变方向使用的语义化英文实现,具有如下值to right/to left 向右/向左渐变to top/to bottom 向上/向下渐变to right bottom/to right top 向右下/向右上渐变to left bottom/to left top 向左下/向左上渐变xxx d
2020-11-14 10:38:02
158
原创 Web前端基础笔记:第九章 CSS-定位(二)
9.1 Floatfloat布局最重要的两个元素:left(左浮动)、right(右浮动)nav:一般用于表示此块区域块是导航区域main:一般用户表示此区域块是网页的主体区域9.2 定位实战(一):模态框模态框特点1、模态框总是在浏览器的中心,浏览器随意的放大缩小,模态框还是在浏览器中心2、模态框总有一个半透明的背景步骤1、完成半透明背景2、完成模态框内部元素水平居中:1、如果是行内元素,我们可以在父容器上使用text-align:center2、如果内部是块内元素,
2020-11-11 14:54:18
388
原创 Web前端基础笔记:第八章 CSS-定位(一)
8.1 Position-static(默认定位)static遵循默认的文档流布局,top、left、right、bottom属性都无效position除了static属性值外,还有4个常用值,分别为relative(相对定位) absolute(绝对定位)fixed(固定定位) sticky(粘性定位)8.2 Position-relative(相对定位)relative先遵循默认的文档流布局也就是上一文说的static布局,然后再在不改变页面布局的前提下根据left、right、
2020-11-09 17:13:00
236
原创 Web前端基础笔记:第七章 CSS-盒模型
7.1 盒模型-content要画一个矩形的格子,要使用一个div标签。div标签就是一个干净透彻的矩形,没有margin、padding、border、content这几个属性。contentdiv标签写出来的时候是没有高度的,但是有宽度,宽度默认和副标签的宽度是一样的。weight/height要画出一个矩形首先要设置矩形的宽高,矩形的宽高对应两个CSS属性width,height,它们的值是数字,单位是px还要给矩形填充颜色才可以看到:如background-color:purpl
2020-11-09 10:51:55
230
原创 Web前端基础笔记:第六章 CSS-引入方式
6.1 CSS的三种引入方式行内样式行内样式需要嵌入在每一个HTML标签中,可想而知,当我们有几百行HTML标签就要写几百个style内部样式抽离步骤:(1)我们先将每个标签的CSS样式抽取出来(2)然后在head标签里声明了一个<style></style>标签(3)接下来将样式都放在了style标签里,注意,这并不是简单复制粘贴。如:(4)将相同的标签写在相同的大括号里,大括号前面加上标签名,具体如上外部样式(1)新建一个index.css文件
2020-11-08 11:36:51
149
原创 Web前端基础笔记:第五章 CSS-美化文档
5.1 HTML内部添加样式在标签中添加声明声明关键字是style后接等号(=)再接引号(“”),即style=“”具体声明如下:<input type=“text” placeholder=“手机号” style=“”>在引号之间添加样式 <p style=“font-size:14px;color:white”></p>5.2 字体大小/字体粗细字体大小设置格式为:font-size:3px;字体加粗设置格式:font-w
2020-11-08 11:00:33
186
原创 Web前端基础笔记:第四章HTML-表单标签
4.1 form标签对于输入框、按钮等输入控件我们需要用一个块状元素<form>把它们包起来,属于同一个表单的表单控件要包含一个在同一个块状元素<form>里面标签的两个元素我们需要了解action:一个处理此单表信息的程序所在的URL,所述表格信息将在表单提交时被发送到定义的地址method:它的值可以是GET或者POST,来规定如何发送表单信息4.2 单行文本输入框占位文本placeholder用于在文本框上显示提示文字,在文本框中输入内容后消失
2020-11-08 10:41:18
206
原创 Web前端基础笔记:第三章HTML-文本标签
3.1 块状和内联标签块状标签和内联标签是HTML中两种主要的标签类型,它们最大的区别就是:块状标签会为自己的内容占据新的一行,而内联标签则不会。常见的块状标签段落<p>、标题<h1>、<div>等常见的内联标签有<span>、图片<img>、<strong>等内联标签常常被嵌套在块状标签中3.2 标题标题之间不可以越级,比如一级标题<h1>下直接写三级标题<h3>,因为这样会导致文章失去清晰的
2020-11-06 11:32:54
109
原创 Web前端基础笔记:第二章认识HTML
2.1 HTML元素的结构HTML标签HTML标签有以下特点:1.由尖括号包围关键词组成比如:<p>、<h1>、<div>、<span>等2.通常成对出现,比如<div>和</div>,第一个为开始标签,第二个为结束标签,结束标签比开始标签多了个”/”3.并不是所有标签都有对应的结束标签,比如<input>、<img>等,它们往往独立呈现2.2 HTML中的嵌套<div> <p&
2020-11-06 11:10:50
142
原创 Web前端进阶笔记:第一章HTML/CSS3介绍
Web前端进阶笔记:第一章 HTML5/CSS3介绍认识HTML5认识HTML5语义化标签即标签的名字赋予标签的意义和作用<p></p>标签代表段落;<h1></h1>标签代表一级标题;<li></li>标签代表列表;常用的语义化标签<header></header>:头部标签;<main></main>:主体标签;<footer></footer
2020-10-17 16:16:17
77
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人