Python从0到100(三十三):xpath和lxml类库

在这里插入图片描述

1. 为什么要学习xpath和lxml

lxml是一款高性能的 Python HTML/XML 解析器,我们可以利用XPath,来快速的定位特定元素以及获取节点信息

2. 什么是xpath

XPath,全称为XML Path Language,是一种用于在XML文档中进行导航和数据提取的语言,可用来在 HTML\XML 文档中对元素和属性进行遍历

W3School官方文档:http://www.w3school.com.cn/xpath/index.asp

3. 认识xml

知识点:

  • html和xml的区别
  • xml中各个元素的的关系和属性

3.1 html和xml的区别

HTML(HyperText Markup Language)和XML(eXtensible Markup Language)都是用于描述数据的标记语言,但它们之间存在一些关键的区别:

  1. 目的

    • HTML:设计用来创建和展示网页内容。
    • XML:设计用来存储和传输数据,不定义数据的显示方式。
  2. 标准性

    • HTML:有固定的标签集,如<p><div><a>等。
    • XML:允许用户定义自己的标签,提供了极大的灵活性。
  3. 结构性

    • HTML:结构相对宽松,某些标签可以不闭合或不严格遵守嵌套规则。
    • XML:非常严格,所有标签必须正确闭合,并且必须正确嵌套。
  4. 数据表示

    • HTML:主要用于展示数据,不关注数据的结构和语义。
    • XML:强调数据的结构和语义,适合数据的存储和交换。
  5. 样式和行为

    • HTML:可以内嵌CSS和JavaScript来控制样式和行为。
    • XML:不包含样式和行为的定义,通常需要与XSL(eXtensible Stylesheet Language)或XSLT(eXtensible Stylesheet Language Transformations)结合使用来定义样式和转换数据。
  6. 错误容忍度

    • HTML:浏览器对HTML的错误相对宽容,即使某些标签使用不当,页面仍可能显示。
    • XML:对错误非常敏感,如果XML文档格式有误,通常无法被正确解析。
  7. 文档类型

    • HTML:通常不需要文档类型声明(DOCTYPE)或可以有简化的声明。
    • XML:每个XML文档都需要一个文档类型声明来指示使用的是XML。
  8. 应用范围

    • HTML:主要用于网页设计和开发。
    • XML:应用范围广泛,包括配置文件、数据交换格式、RSS feeds等。
  9. 命名空间

    • HTML:不支持命名空间。
    • XML:支持命名空间,有助于解决不同XML文档中标签名称冲突的问题。
  10. 扩展性

    • HTML:扩展性有限,受限于其固定的标签集。
    • XML:高度可扩展,用户可以根据需要创建新的标签和属性。

尽管HTML和XML在某些方面相似,但它们的设计目标和使用方式有着根本的不同。HTML专注于网页内容的展示,而XML则是一种更为通用的数据交换格式。

3.2 xml的树结构

<bookstore>
<book category="COOKING"><title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.00</price> 
</book>
<book category="CHILDREN"><title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> 
</book>
<book category="WEB"><title lang="en">Learning XML</title> <author>Erik T. Ray</author> <year>2003</year> <price>39.95</price> 
</book>
</bookstore>

4. xpath的节点关系

知识点:

  • 认识xpath中的节点
  • 了解xpath中节点之间的关系

4.1 xpath中的节点是什么

每个XML的标签我们都称之为节点,其中最顶层的节点称为根节点。

XPath(XML Path Language)是一种用于在XML文档中进行导航的语言,它允许你选择节点或节点集,并对它们进行操作。在XPath中,节点是文档结构的基本单元,包括以下几种类型:

  1. 元素节点:XML文档中的标签,如<book><title>等。
  2. 属性节点:元素的属性,如<book lang="English">中的lang="English"
  3. 文本节点:元素内的文本内容,如<name>John Doe</name>中的John Doe
  4. 命名空间节点:XML文档中的命名空间声明。
  5. 处理指令节点:XML文档中的处理指令,如<?xml-stylesheet type="text/xsl" href="style.xsl"?>
  6. 注释节点:XML文档中的注释部分。
  7. 根节点:XML文档的根元素,它是所有其他节点的父节点。

4.2 xpath中节点的关系

在XPath中,节点之间的关系可以描述如下:

  • 父节点:一个节点的直接上级节点。例如,在<parent><child/></parent>中,<parent><child>的父节点。
  • 子节点:一个节点的直接下级节点。在上述例子中,<child><parent>的子节点。
  • 兄弟节点:具有相同父节点的节点。例如,在<parent><child1/><child2/></parent>中,<child1><child2>互为兄弟节点。
  • 祖先节点:从当前节点向上直到根节点的所有节点。例如,在<grandparent><parent><child/></parent></grandparent>中,<grandparent><parent>都是<child>的祖先节点。
  • 后代节点:从当前节点向下直到最后一个子节点的所有节点。在上述例子中,<child><grandparent><parent>的后代节点。
  • 前序节点:包括当前节点及其所有祖先节点。
  • 后序节点:包括当前节点及其所有后代节点。
  • :XPath中用于描述节点之间关系的术语,如子轴(child axis)、父轴(parent axis)、祖先轴(ancestor axis)和后代轴(descendant axis)等。

XPath提供了丰富的路径表达式和函数,允许用户根据这些节点关系来选择和操作XML文档中的特定部分。例如,使用//可以选取文档中的所有后代节点,无论它们位于文档的哪个位置。使用/可以选取根节点的子节点,而.代表当前节点。

5. xpath中节点选择的工具

  • Chrome插件 XPath Helper
    • 下载地址:https://pan.baidu.com/s/1UM94dcwgus4SgECuoJ-Jcg 密码:337b
    • 把文件的后缀名crx改为rar,然后解压到xpath_…
    • 把解压后的文件夹拖入到已经开启开发者模式的chrome浏览器扩展程序界面
    • 重启浏览器
  • Firefox插件 XPath Checker

注意:
这些工具是用来学习xpath语法的,他们都是从elements中匹配数据,elements中的数据和url地址对应的响应不相同,所以在代码中,不建议使用这些工具进行数据的提取

6. xpath语法

知识点

  • 掌握元素路径的相关方法
  • 掌握获取获取属性的方法
  • 掌握获取文本的方法

我们将在下面的例子中使用这个 XML 文档。

<bookstore><book><title lang="eng">Harry Potter</title><price>29.99</price>
</book><book><title lang="eng">Learning XML</title><price>39.95</price>
</book></bookstore>

6.1 选取节点

XPath 使用路径表达式来选取 XML 文档中的节点或者节点集。这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似。

使用chrome插件选择标签时候,选中时,选中的标签会添加属性class=“xh-highlight”

下面列出了最有用的表达式:

表达式描述
nodename选中该元素。
/从根节点选取、或者是元素和元素间的过渡。
//从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。
.选取当前节点。
选取当前节点的父节点。
@选取属性。
text()选取文本。

实例

在下面的表格中,我们已列出了一些路径表达式以及表达式的结果:

路径表达式结果
bookstore选择bookstore元素。
/bookstore选取根元素 bookstore。注释:假如路径起始于正斜杠( / ),则此路径始终代表到某元素的绝对路径!
bookstore/book选取属于 bookstore 的子元素的所有 book 元素。
//book选取所有 book 子元素,而不管它们在文档中的位置。
bookstore//book选择属于 bookstore 元素的后代的所有 book 元素,而不管它们位于 bookstore 之下的什么位置。
//book/title/@lang选择所有的book下面的title中的lang属性的值。
//book/title/text()选择所有的book下面的title的文本。

xpath基础语法练习:

接下来我们听过豆瓣电影top250的页面来练习上述语法

https://movie.douban.com/top250

  • 选择所有的h1下的文本
    • //h1/text()
  • 获取所有的a标签的href
    • //a/@href
  • 获取html下的head下的title的文本
    • /html/head/title/text()
  • 获取html下的head下的link标签的href
    • /html/head/link/@href

但是当我们需要选择所有的电影名称的时候会特别费力,通过下一小节的学习,就能够解决这个问题

6.2 查找特定的节点

路径表达式结果
//title[@lang=“eng”]选择lang属性值为eng的所有title元素
/bookstore/book[1]选取属于 bookstore 子元素的第一个 book 元素。
/bookstore/book[last()]选取属于 bookstore 子元素的最后一个 book 元素。
/bookstore/book[last()-1]选取属于 bookstore 子元素的倒数第二个 book 元素。
/bookstore/book[position()>1]选择bookstore下面的book元素,从第二个开始选择
//book/title[text()=‘Harry Potter’]选择所有book下的title元素,仅仅选择文本为Harry Potter的title元素
/bookstore/book[price>35.00]/title选取 bookstore 元素中的 book 元素的所有 title 元素,且其中的 price 元素的值须大于 35.00。

注意点:
在xpath中,第一个元素的位置是1,最后一个元素的位置是last(),倒数第二个是last()-1

6.3 选取未知节点

XPath 通配符可用来选取未知的 XML 元素。

通配符描述
*匹配任何元素节点。
@*匹配任何属性节点。
node()匹配任何类型的节点。

实例

在下面的表格中,我们列出了一些路径表达式,以及这些表达式的结果:

路径表达式结果
/bookstore/*选取 bookstore 元素的所有子元素。
//*选取文档中的所有元素。
//title[@*]选取所有带有属性的 title 元素。

6.3 选取若干路径

通过在路径表达式中使用“|”运算符,您可以选取若干个路径。

实例

在下面的表格中,我们列出了一些路径表达式,以及这些表达式的结果:

路径表达式结果
//book/title | //book/price选取 book 元素的所有 title 和 price 元素。
//title | //price选取文档中的所有 title 和 price 元素。
/bookstore/book/title | //price选取属于 bookstore 元素的 book 元素的所有 title 元素,以及文档中所有的 price 元素。

小结

  1. xpath的概述XPath (XML Path Language),解析查找提取信息的语言
  2. xml是和服务器交互的数据格式和json的作用一致
  3. html是浏览器解析标签数据显示给用户
  4. xpath的节点关系:根节点,子节点,父节点,兄弟节点,子节点,后代节点
  5. xpath的重点语法获取任意节点://
  6. xpath的重点语法根据属性获取节点:标签[@属性 = '值']
  7. xpath的获取节点属性值:@属性值
  8. xpath的获取节点文本值:text()

好书推荐

《AI绘画与摄影实战108招:ChatGPT+Midjourney+文心一格》
在这里插入图片描述
《AI绘画与摄影实战108招:ChatGPT Midjourney 文心一格》通过10个专题内容、108个实用技巧、120多分钟教学视频,讲解了AI绘画与摄影的相关知识,随书附赠了108集同步教学视频、50多个素材效果、260多个书中案例关键词、5200个绘画关键词等。具体内容按以下两条线展开。
一是技能线:详细讲解了ChatGPT关键词的挖掘方法、文心一格的绘画技巧、常见的AI构图与光线色调指令、Midjourney常用的绘图指令,以及AI绘图的4种方法。
二是案例线:介绍了人物摄影、动物摄影、植物摄影、建筑摄影、慢门摄影、星空摄影、航拍摄影、全景摄影、风光摄影、人文摄影、产品摄影、时尚摄影等多种热门摄影的知识。
本书由浅入深,以实战为核心,既适合摄影师、绘画爱好者、设计师、插画师、漫画家、电商商家、艺术工作者等阅读,又可作为相关院校的教材。

购买链接:https://product.dangdang.com/29723004.html

编辑推荐

高效绘图! 10章核心内容,ChatGPT结合Midjourney与文心一格,实现AI全方位作品生成!
实战案例! 50多个素材效果+108招干货技巧+260多个指令关键词 5200款绘画关键词,实操实练,秒变AI绘画高手!
视频教学! 赠送108集教学视频,扫描二维码可随时随地全程查看操作过程,让学习更轻松!

内容简介

《AI绘画与摄影实战108招:ChatGPT Midjourney 文心一格》通过10个专题内容、108个实用技巧、120多分钟教学视频,讲解了AI绘画与摄影的相关知识,随书附赠了108集同步教学视频、50多个素材效果、260多个书中案例关键词、5200个绘画关键词等。具体内容按以下两条线展开。
一是技能线:详细讲解了ChatGPT关键词的挖掘方法、文心一格的绘画技巧、常见的AI构图与光线色调指令、Midjourney常用的绘图指令,以及AI绘图的4种方法。
二是案例线:介绍了人物摄影、动物摄影、植物摄影、建筑摄影、慢门摄影、星空摄影、航拍摄影、全景摄影、风光摄影、人文摄影、产品摄影、时尚摄影等多种热门摄影的知识。
本书由浅入深,以实战为核心,既适合摄影师、绘画爱好者、设计师、插画师、漫画家、电商商家、艺术工作者等阅读,又可作为相关院校的教材。

作者简介

石头,零点画室创始人,资深摄影师,省级摄影家协会会员,毕业于湖南工艺美术学院,参与过《蓝猫总动员》的创作,2022年远赴日本、美国学习AI绘画技术,对Midjourney、Stable Diffusion有着丰富的实战经验,尤喜动漫风、中国风效果的绘制。

目  录

目 录
第1章.文案生成:ChatGPT摄影应用……………………………001
1.1 掌握关键词的挖掘技巧……002
001 使用ChatGPT进行对话 …002
002 使用特定关键词提升逻辑性 …003
003 使用关键词拓宽思维广度 …004
004 提供详细要求获取答案 …006
005 提供实例说明需求 …007
006 通过扮演角色获取答案 …008
1.2 生成AI绘画关键词……010
007 直接提问获取关键词 …011
008 通过对话不断获取关键词 …013
009 区分中、英文关键词 …016
1.3 生成AI摄影关键词……019

前  言

在数字化时代,AI技术的发展对经济产生了巨大影响。它改变了生产、制造和服务行业,提高了生产效率,降低了成本,创造了新的商业模式。随着ChatGPT、Midjourney和文心一格等AI工具的出现和发展,AI绘画技术逐渐开始创作出各种新颖、独特的艺术作品,为艺术家提供了新的创作工具和灵感,帮助艺术家突破传统的创作限制。然而,目前市场上关于AI绘图工具的资料和书籍还相对稀缺。
秉持着响应国家科技兴邦、实干兴邦的精神,我们致力于为读者提供一种全新的学习方式,使其能够更好地适应时代发展的需要。本书结合ChatGPT与Midjourney、文心一格等多种AI绘图工具,为读者提供了108个实用技巧,从关键词提取到图片的制作生成,从讲解基础绘图参数到运用参数进行实战,帮助读者全方位熟悉AI绘图工具,使读者能够在日常生活中充分利用AI技术,体验人工智能在绘画和摄影中的潜力和价值。
综合来看,本书有以下3个亮点。
(1)实战干货。本书提供了108个实用的技巧和实例,涵盖了ChatGPT的关键词提取、文心一格的操作方法、全面大量的AI绘图指令和AI绘图操作步骤等各个方面的内容。这些实战干货可以帮助读者快速掌握AI绘画和AI摄影的核心技能,并将其应用到实际工作场景中。同时,本书还针对每个技巧进行了详细的说明和演示,并辅以360多张彩插图解实例操作过程,以便读者更好地理解和应用所学知识。
(2)视频教学。本书为所有操作案例录制了同步的高清教学视频,共108集,120多分钟,读者可以用手机扫码,边看边学,边学边用。
(3)物超所值。本书介绍了3款软件,读者花1本书的钱,可以同时学习3款软件的精华,并且随书赠送了50多个素材效果、260多个书中案例关键词、5200个绘画关键词,方便读者进行实战操作练习,提高自己的绘图技能。
特别提示:
(1)版本更新:本书在编写时,是基于当时各种AI工具和软件的界面截取的实际操作图片,但本书从编辑到出版需要一段时间,这些工具的功能和界面可能会有所变动,请在阅读时,根据书中的思路举一反三进行学习。其中,ChatGPT为3.5版,Midjourney为5.2版。
(2)指令的称谓:指令又称为关键词、描述词、提示词或“咒语”,它是我们与AI模型进行交流的机器语言,书中在不同场合使用了不同的称谓,主要是为了让大家更好地理解这些行业用语,避免一叶障目。另外,很多关键词暂时没有对应的中文翻译,强行翻译为中文也会让人无法理解AI模型。
(3)指令的使用:在Midjourney中,尽量使用英文指令,对于英文单词的格式没有太多要求,如首字母大小写不用统一、单词顺序不用太讲究等。但需要注意的是,每个指令中间最好添加空格或逗号,同时所有的标点符号使用英文字体。另外,需要特别注意的是,即使是相同的指令,AI模型每次生成的文案或图片内容也会有差别。
(4)特别提醒:尽管ChatGPT具备强大的模拟人类对话的能力,但由于其是基于机器学习的模型,因此在生成的文案中仍然会存在一些语法错误,读者需根据自身需求对文案进行适当修改或再加工后方可使用。
本书由石头编著,参与编写的人员还有刘阳洋,在此表示感谢。由于作者水平有限,书中难免存在疏漏之处,恳请广大读者批评、指正。读者可扫描封底“文泉云盘”二维码获取作者联系方式,与我们沟通交流。
在这里插入图片描述

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

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

相关文章

Python基础之多进程

文章目录 1 多进程1.1 简介1.2 Linux下多进程1.3 multiprocessing1.4 Pool1.5 进程间通信1.6 分布式进程 1 多进程 1.1 简介 要让Python程序实现多进程&#xff08;multiprocessing&#xff09;&#xff0c;我们先了解操作系统的相关知识。 Unix/Linux操作系统提供了一个fork…

豆包文科成绩超了一本线,为什么理科不行?

卡奥斯智能交互引擎是卡奥斯基于海尔近40年工业生产经验积累和卡奥斯7年工业互联网平台建设的最佳实践&#xff0c;基于大语言模型和RAG技术&#xff0c;集合海量工业领域生态资源方优质产品和知识服务&#xff0c;旨在通过智能搜索、连续交互&#xff0c;实时生成个性化的内容…

Java - 程序员面试笔记记录 实现 - Part2

2.1 输入输出流 流可以被看作一组有序的字节集合&#xff0c;即数据在两个设备间的传输。 字节流&#xff1a;以字节作为单位&#xff0c;读到一个字节就返回一个字节&#xff1b;InputStream & OutputStream。 字符流&#xff1a;使用字节流读到一个到多个字节先查询码…

基于RabbitMQ的异步消息传递:发送与消费

引言 RabbitMQ是一个流行的开源消息代理&#xff0c;用于在分布式系统中实现异步消息传递。它基于Erlang语言编写&#xff0c;具有高可用性和可伸缩性。在本文中&#xff0c;我们将探讨如何在Python中使用RabbitMQ进行消息发送和消费。 安装RabbitMQ 在 Ubuntu 上安装 Rabbi…

提升写作效率:探索AI在现代办公自动化中的应用

工欲善其事&#xff0c;必先利其器。 随着AI技术与各个行业或细分场景的深度融合&#xff0c;日常工作可使用的AI工具呈现出井喷式发展的趋势&#xff0c;AI工具的类别也从最初的AI文本生成、AI绘画工具&#xff0c;逐渐扩展到AI思维导图工具、AI流程图工具、AI生成PPT工具、AI…

ubuntu 系统中 使用docker 制作 Windows 系统,从此告别 vmware虚拟机

我的系统是 ubuntu 24 前期准备工作&#xff1a; 安装dockerdocker pull 或者 手动制作镜像 docker build 的话 必须要 科学上网&#xff0c; 好像阿里镜像都下不下来。需要 知道 docker 和docker compose 命令的使用方式 我是给docker 挂了 http代理 如果你能pull下来镜像 …

springboot健身房管理系统-计算机毕业设计源码031807

摘 要 大数据时代下&#xff0c;数据呈爆炸式地增长。为了迎合信息化时代的潮流和信息化安全的要求&#xff0c;利用互联网服务于其他行业&#xff0c;促进生产&#xff0c;已经是成为一种势不可挡的趋势。在健身房管理的要求下&#xff0c;开发一款整体式结构的健身房管理系统…

Windows环境使用SpringBoot整合Minio平替OSS

目录 配置Minio环境 一、下载minio.exe mc.exe 二、设置用户名和密码 用管理员模式打开cmd 三、启动Minio服务器 四、访问WebUI给的地址 SpringBoot整合Minio 一、配置依赖&#xff0c;application.yml 二、代码部分 FileVO MinioConfig MinioUploadService MinioController 三…

使用Python绘制太阳系图

使用Python绘制太阳系图 太阳系图太阳系图的优点使用场景 效果代码 太阳系图 太阳系图&#xff08;Sunburst Chart&#xff09;是一种层次结构图表&#xff0c;用于表示数据的分层结构。它使用同心圆表示各个层级&#xff0c;中心圆代表最高层级&#xff0c;向外的圆环代表逐级…

CCT技术

概念介绍 多个功能核心的集成可以通过片上系统(SOC)或封装中系统(SIP)设备的开发来实现。SOC器件将核心集成到单个集成电路中。SIP集成是将多个集成电路组合到单个封装中。核心数量 的增加可能导致必要的测试人员资源和/或测试时间的增加。这直接影响了与测试这些设备相关的…

CesiumJS【Basic】- #031 绘制虚线(Entity方式)

文章目录 绘制虚线(Entity方式)1 目标2 代码2.1 main.ts绘制虚线(Entity方式) 1 目标 使用Entity方式绘制虚线 2 代码 2.1 main.ts import * as Cesium from cesium;const viewer = new Cesium.Viewer(

SAP实现特别总账的凭证预制

SAP实现特别总账的凭证预制 仔细理解只有”其他”的特殊总帐标识才可预制凭证这句话. F-29/f-48不可预制。F-29/f-48预制时出现错误消息号 FP 030&#xff0c;提示特殊总帐标志类型“汇票和”预付定金“的特别总帐标志的过帐代码不能预制&#xff0c;这是系统写死的&#xff…

现在电气真的比不过计算机吗 ?

电气工程和计算机科学在今天的科技和工业领域中各有其重要性和发展空间&#xff0c;并不存在简单的比较谁“比不过”谁的情况。我收集制作一份plc学习包&#xff0c;对于新手而言简直不要太棒&#xff0c;里面包括了新手各个时期的学习方向&#xff0c;包括了编程教学&#xff…

Pycharm的终端(Terminal)中切换到当前项目所在的虚拟环境

1.在Pycharm最下端点击终端/Terminal, 2.点击终端窗口最上端最右边的∨&#xff0c; 3.点击Command Prompt&#xff0c;切换环境&#xff0c; 可以看到现在环境已经由默认的PS(Window PowerShell)切换为项目所使用的虚拟环境。 4.更近一步&#xff0c;如果想让Pycharm默认显示…

Linux常用工具使用方式

目录 常用工具&#xff1a; 安装包管理工具&#xff1a; 查找含有关键字的软件包 安装软件 安装文件传输工具 安装编辑器 C语言编译器 C编译器 安装调试器 安装项目版本管理工具 cmake 卸载软件 安装jsoncpp 安装boost库 安装mariadb 安装tree&#xff08;让目录…

潜水耳机哪个牌子好?用户精选,这四款潜水耳机质量上乘!

在这个快节奏的时代&#xff0c;人们越来越渴望在运动中也能享受到音乐的陪伴。潜水&#xff0c;作为一种独特的水下运动&#xff0c;自然也不例外。然而&#xff0c;并非所有的耳机都能承受水下的压力和环境&#xff0c;这就要求我们对潜水耳机有着更高的要求。作为一名资深的…

Kubernetes的发展历程:从Google内部项目到云原生计算的基石

目录 一、起源与背景 1.1 Google的内部项目 1.2 Omega的出现 二、Kubernetes的诞生 2.1 开源的决策 2.2 初期发布 三、Kubernetes的发展历程 3.1 社区的成长 3.2 生态系统的壮大 3.3 重大版本和功能 3.4 多云和混合云的支持 四、Kubernetes的核心概念 4.1 Pod 4.…

hive4 从入门到精通

查询hive 架构 准备 HDFS配置 vim $HADOOP_HOME/etc/hadoop/core-site.xml <!--配置所有节点的root用户都可作为代理用户--><property><name>hadoop.proxyuser.root.hosts</name><value>*</value></property><!--配置root用户…

Jenkins接口自动化项目的工程创建

jenkins的下载安装 jenkins下载的官网地址 https://www.jenkins.io/download/ java环境变量的配置下载 jenkins是用java语言编写的所以要配置java环境 需要安装java的JDK 推荐安装JDK17(https://blog.csdn.net/wochunyang/article/details/138520209) JDK17的下载地址 ht…

加载数据到mysql并解决原始数据乱码问题

查看linux上数据&#xff1a; 使用命令转换编码&#xff1a; iconv -f GBK -t UTF-8 toutiao.csv -o toutiao2.csv加载数据到mysql: load data local infile /root/toutiao2.csv INTO TABLE pdz FIELDS TERMINATED BY , LINES TERMINATED BY \r\n;