当前位置: 首页> 娱乐> 明星 > 东莞百度快速排名提升_建站公司排名 软通_上海最近3天疫情情况_相关搜索优化软件

东莞百度快速排名提升_建站公司排名 软通_上海最近3天疫情情况_相关搜索优化软件

时间:2025/7/19 4:31:55来源:https://blog.csdn.net/2403_88453964/article/details/147155031 浏览次数:0次
东莞百度快速排名提升_建站公司排名 软通_上海最近3天疫情情况_相关搜索优化软件

目录

一.数据解析概述

二.re解析和正则表达式

三.bs4解析-HTML语法

四.Xpath解析


此章节主要讲解:数据解析概述、re模块、bs4解析-html语法、xpath解析以及正则表达式。其中正则表达式我已经写过相关笔记,这里浅略叙述,如果不懂请看我笔记:https://blog.csdn.net/2403_88453964/article/details/147055211?spm=1001.2014.3001.5502

一.数据解析概述

在上一章中,我们基本上掌握了抓取整个网页的基本技能,但是呢,大多数情况下,我们并不需要整个网页的内容,只是

需要那么一小部分,怎么办呢?这就涉及到了数据提取的问题。

本章节中,提供三种解析方式:

1.re解析

2.bs4解析

3.xpath解析

这三种方式可以混合进行使用,完全以结果做导向,只要能拿到你想要的数据,用什么方案并不重要,当你掌握了这些之后.再考虑性能的问题。

二.re解析和正则表达式

Regular Expression,正则表达式,一种使用表达式的方式对字符串进行匹配的语法规则.

我们抓取到的网页源代码本质上就是一个超长的字符串,想从里面提取内容,用正则再合适不过了,

正则的优点: 速度快,效率高,准确性高

正则的缺点: 新手上手难度有点儿高.

不过只要掌握了正则编写的逻辑关系,写出一个提取页面内容的正则其实并不复杂

正则的语法: 使用元字符进行排列组合用来匹配字符串 在线测试正则表达式https:/tool.oschina.net/regex/

元字符: 具有固定含义的特殊符号

常用元字符:

量词:控制前面的元字符出现的次数

贪婪匹配和惰性匹配

这两个要着重的说一下.因为我们写爬虫用的最多的就是这个惰性匹配。

案例:

所以我们能发现这样一个规律:.?表示尽可能少的匹配.表示尽可能多的匹配,暂时先记住这个规律.后面写爬虫会用

到的哦

re解析和正则表达式的实战案例如下:

注:

利用re解析和正则解析的时候需要你去根据html的源代码去找他们规律,作为开头和结尾,常利用.*?作为最主要的爬取正则表达式。

若一个页面有https,我们可以将get方法中的verify的值赋False可以解决。

三.bs4解析-HTML语法

bs4解析比较简单,但是呢,首先你需要了解一丟丟的html知识,然后再去使用bs4去提取,逻辑和编写难度就会非常简

单和清晰。

HTML(Hyper Text Markup Language)超文本标记语言,是我们编写网页的最基本也是最核心的一种语言:其语法规则

就是用不同的标签对网页上的内容进行标记,从而使网页显示出不同的展示效果.

上述代码的含义是在页面中显示“我爱你“三个字,但是我爱你三个字被"<h1>"和"</h1>"标记了,白话就是被括起来了被H1这个标签括起来了,这个时候,浏览器在展示的时候就会让我爱你变粗变大,俗称标题,所以HTML的语法就是用类似这样的标签对页面内容进行标记,不同的标签表现出来的效果也是不一样的.

注:

  1. h1:一级标题
  2. h2:二级标题
  3. p:段落
  4. font:字体(被废弃了,但能用)
  5. body:主体

总结:

html语法:

bs4解析语法使用代码如下:

总结:

第一步:下载并导入bs4包

第二步:把页面的源代码解析成BeautifulSoup进行处理,生成bs对象

第三步:

爬取思路如下:

bs4解析的用法,主要还是需要一点html的知识,主要解析的方法过程,首先你需要去“查看网页源代码”,大部分网页源代码都是利用了安全手段,这里可能需要抓包,作者还未学这样的技术。但是解析的过程就是根据标签不同的地方去定位,需要查找解析的它所在的链接。然后根据这个链接去利用文件存入下载的图片即可完成。

四.Xpath解析

Xpath是XML文档中搜索内容的一门语言,html是XML的一个子集

在上述html中

1.book,id,name, price....都被称为节点

2.ld,name,price,author被称为book的子节点

3.book被称为id,name,price,author的父节点

4.id,name,price,author被称为同胞节点

有了这些基础知识后,我们就可以开始了解xpath的基本语法了在python中想要使用xpath,需要安装IxmI模块:

pip install –i https://pypi.tuna.tsinghua.edu.cn/simple lxml

用法:

1.将要解析的html内容构造出etree对象.

2.使用etree对象的xpath0方法配合xpath表达式来完成对数据的提取

xpath练习代码如下:

注:

/表示层级关系,表示从根节点开始查找

//表示查找所有符合节点,不管层级关系

*表示任意节点相当于通配符

xpath入门2代码示例如下:

注:

@表示属性

 xpath的索引从1开始,[]表示索引

[@***=***]表示属性的筛选

.表示相对查找在网页中可以按F12进入开发者模式,进入到elements然后可以右击选择“copy”->”copy xpath”这样及其方便。

关键字:东莞百度快速排名提升_建站公司排名 软通_上海最近3天疫情情况_相关搜索优化软件

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: