爬虫技术必学之用强大的正则提取一切你想要的内容!JavaScript正则表达式提取网站高价值信息【附代码】!

news2024/12/24 2:27:59

        前面给大家介绍过,本人既精通GIS开发全栈技术,也精通爬虫技术,对人工智能算法也比较熟悉。这些技术我会一一给大家讲解。

        今天,咱们的主题是给大家通过一个案例讲解一下正则表达式的强大之处。当我们用爬虫获取网页的源码或内容时,这些内容可能比较杂乱无序,但是我们只需要提取一些重要的信息。比如下面这个例子:

ctn=`<meta data-vue-meta="true" http-equiv="X-UA-Compatible" 
content="IE=edge"><meta data-vue-meta="true" itemprop="keywords" name="keywords" content="日本渔民亲口承认当地渔业遭受重创,搞笑研究所,生活记录,日本,脱口秀,恶搞,搞笑,核废水,搞笑研究所2023 5.0 爆笑一夏,生活,搞笑,哔哩哔哩,bilibili,B站,弹幕"><meta data-vue-meta="true" itemprop="description" name="description" content="日本渔民亲口承认当地渔业遭受重创, 视频播放量 209940、弹幕量 479、点赞数 15820、投硬币枚数 2837、收藏人数 782、转发人数 1112, 视频作者 张全蛋, 作者简介 上古时期自媒体创作者">`

        现在我们有个需求,想要提取这些内容中的视频播放量弹幕量点赞数投硬币数收藏人数转发人数这6项内容。

        我们先分析下,第一眼看到这样的内容,很明显是从某网站上获取到的网页源码,也就是html文件内容。我们知道,一个html是由大量的标签组成的,标签内部又有很多内容,此外,html的内容也必然是多行。这种情况下,如果想精准的提取某些高价值的信息,必须要借助强大的正则表达式才行。为了方便大家学习和验证,下面我直接上代码,大家可以直接使用,代码为Javascript。

var pattern = /视频播放量.*,.*/; // 匹配两个单词之间的空格
var result = ctn.match(pattern);
gg=result[0]
vvv=gg.split(',')[0]
vvvvv=vvv.split('、')
console.log(vvvvv[0]); // 打印第一个匹配到的结果

代码运行结果见下图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1512705.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

波司登:品牌引领 从中国第一迈向“全球领先”

专注羽绒服领域48年&#xff0c;波司登不断夯实品牌核心竞争力&#xff0c;推进新型工业化&#xff0c;培育新质生产力&#xff0c;扛起新时代企业责任担当—— 波司登&#xff1a;品牌引领 从中国第一迈向“全球领先” 入选工信部首批“工业图强”企业史志优秀案例&#xff0c…

【数仓】通过Flume+kafka采集日志数据存储到Hadoop

相关文章 【数仓】基本概念、知识普及、核心技术【数仓】数据分层概念以及相关逻辑【数仓】Hadoop软件安装及使用&#xff08;集群配置&#xff09;【数仓】Hadoop集群配置常用参数说明【数仓】zookeeper软件安装及集群配置【数仓】kafka软件安装及集群配置【数仓】flume软件安…

【C++】string学习 — 手搓string类项目

手搓string项目 1 string类介绍2 功能描述3 代码实现3.0 基础框架3.1 构造函数 和 析构函数3.2 流操作符重载 和 尾插扩容3.4 运算符重载3.5 实用功能3.6 迭代器模拟 总结这里提供一下源代码&#xff1a;Thanks♪(&#xff65;ω&#xff65;)&#xff89;谢谢阅读&#xff01;…

摄像机内存卡删除的视频如何恢复?恢复指南来袭

在现代社会&#xff0c;摄像机已成为记录生活、工作和学习的重要设备。然而&#xff0c;随着使用频率的增加&#xff0c;误删或意外丢失视频的情况也时有发生。面对这样的情况&#xff0c;许多用户可能会感到无助和困惑。那么&#xff0c;摄像机内存卡删除的视频真的无法恢复吗…

【AnaConda/MiniConda/Linux】使用sudo python或切换root管理员conda环境被绕过解决方案

写在前面 部分机型修改环境变量存在风险&#xff0c;可能用于被覆盖而出现大量命令无法找到的情况 可以输入这个解决 export PATH/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin往期相关内容 探索Miniconda3&#xff1a;简单、灵活的Python环境和…

HTML 学习笔记(九)颜色值和长度单位

一、颜色 1.通过RGB值来设置颜色 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>table</title&…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的癌症图像检测系统(深度学习模型+UI界面代码+训练数据集)

摘要&#xff1a;本篇博客深入介绍了如何借助深度学习技术开发癌症图像检测系统&#xff0c;以提高医疗诊断的精度和速度。系统基于先进的YOLOv8算法&#xff0c;并对比分析了YOLOv7、YOLOv6、YOLOv5的性能&#xff0c;如mAP和F1 Score。详细解释了YOLOv8的原理&#xff0c;并附…

【how2j练习题】css部分课堂练习

1.表格斑马线 <style>table {width: 500px;border-collapse: collapse;}tr#title {background-color: white;text-align: center;border-bottom: 5px solid gold;}tr#id1 {text-align: center;border-bottom: 2px solid blueviolet;}tr#id2 {text-align: center;border-b…

【C++】STL(六) list容器

7. list容器7.1 简介7.2 构造函数例子 7.3 赋值和交换例子 7.4 大小操作例子 7.5 插入和删除例子 7.6 数据存取例子 7.7 反转和排序例子 7. list容器 7.1 简介 ① 功能&#xff1a;将数据进行链式存储。 ② 链表(list)是一种物理存储单元上非连续的存储结构&#xff0c;数据…

Python环境下一维时间序列的小波尺度谱和时间平均小波谱(基于Morlet小波)

小波分析是较好的非平稳信号分析方法之一&#xff0c;它通过伸缩和平移运算对信号进行多尺度细化分析&#xff0c;能够在不同的尺度上描述信号的局部特征&#xff0c;为微弱故障特征信号的检测提供了有效的工具。小波尺度谱可看作一个有恒定相对带宽的谱图&#xff0c;能够反映…

Linux fork函数详解

文章目录 1 基本介绍2 fork实例2.1 多个fork返回值2.2 C语言 fork与输出2.3 fork &#x1f4a3; 1 基本介绍 #include <sys/types.h> #include <unistd.h>pid_t fork(void)描述 fork用于创建一个子进程&#xff0c;它与父进程的唯一区别在于其PID和PPID&#xff0…

【Linux】Linux小结

LVS、Nginx、HAproxy的区别 LVS、Nginx和HAproxy都是常见的负载均衡器&#xff0c;用于将网络负载分散到多个服务器上&#xff0c;以提高系统的可用性和性能 功能不同&#xff1a; LVS是一个Linux内核模块&#xff0c;在网络层&#xff08;第四层&#xff09;运行的。 Nginx和…

Java错误:微服务报错Cannot execute request on any known serve

&#x1f414;问题内容 报Cannot execute request on any known server 这个错&#xff1a;连接Eureka服务端地址不对。 &#x1f414;解决方式 检查.yml文件或者.properties文件配置 下划线下划线后面的小写字母等同于去掉下划线大写下划线后面的字母&#xff08;驼峰原则&am…

一道题学会如何使用哈希表

给你一个整数数组 nums 和一个整数 k &#xff0c;请你统计并返回 该数组中和为 k 的子数组的个数 。 子数组是数组中元素的连续非空序列。 示例 1&#xff1a; 输入&#xff1a;nums [1,1,1], k 2 输出&#xff1a;2示例 2&#xff1a; 输入&#xff1a;nums [1,2,3], …

【任务计划程序】打卡签到(自用)

文章目录 前言效果如下&#xff1a; 任务计划程序其他签到代码&#xff08;更新如下&#xff09; 前言 【github actionpython】完成定时任务并推送&#xff08;学会自制&#xff09;&#xff08;这里的github上这个glados签到不能用了&#xff0c;glados上的部分功能也变了&a…

学完Efficient c++ (39-40)

条款39&#xff1a;明智而审慎地使用private继承 private继承的特点&#xff1a; 如果类之间是private继承关系&#xff0c;那么编译器不会自动将一个派生类对象转换为一个基类对象。由private继承来的所有成员&#xff0c;在派生类中都会变为private属性&#xff0c;换句话说…

大白话ChatGPT技术

▼最近直播超级多&#xff0c;预约保你有收获 今晚直播&#xff1a;《ChatGPT架构设计与应用案例实践》 —1— ChatGPT 架构设计剖析 ChatGPT 总体架构由三大部分构成&#xff1a;预训练&#xff08;Pre-training&#xff09;架构、微调&#xff08;Fine-tuning&#xff09;架…

sqllab第五关通关笔记

知识点&#xff1a; 报错注入函数语法&#xff08;详见第二关笔记&#xff09;报错注入打印位数最多32位对于大于32位的数据最好使用截取函数进行控制&#xff1b;以保证输出完整mysql表中的重点数据库 information_schema &#xff08;mysql 5.0以上&#xff09; schemata …

揭秘 Kubernetes Secret:安全存储敏感信息的秘密武器

Kubernetes Secret Secret 是 Kubernetes 中用于存储敏感信息的资源&#xff0c;例如密码、API 密钥和 SSH 密钥。Secret 可以被 Pod 和其他 Kubernetes 资源使用&#xff0c;而无需将敏感信息暴露在配置文件或环境变量中。 1. Secret 类型 Kubernetes 支持多种类型的 Secre…

智能家居涉及到的12个物联网传感器!

智能家居领域涉及到的物联网传感器种类繁多&#xff0c;下面列举一些常见的物联网传感器&#xff1a; 温度传感器&#xff1a;用于检测室内温度&#xff0c;可以实现智能温控和节能控制。湿度传感器&#xff1a;用于检测室内湿度&#xff0c;可以实现智能湿度控制和防潮功能。…