20230508在Ubuntu22.04下使用python3批量转换DOCX文档为TXT

news2024/12/28 19:07:59

20230508在Ubuntu22.04下使用python3批量转换DOCX文档为TXT
2023/5/8 16:27


在WIN10下请参考本文,在Ubuntu22.04下需要不通的插件!
https://blog.csdn.net/weixin_46255747/article/details/129961988
python实现批量docx转txt


docx文档放到input目录中。
docx文档转txt之后的文档放到output目录中。
本文分3个步骤:
1、遍历input目录中的全部docx档。
2、docx档转txt档。
3、TXT档保存在output目录中。


0、python3的插件安装:
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ ll *.py
-rwxr--r-- 1 rootroot rootroot 1245  5月  7 20:07  pdf2doc2.py*
-rwxr--r-- 1 rootroot rootroot 1245  5月  7 20:07 'pdf2doc2 - 副本.py'*
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ python pdf2doc2.py 
Traceback (most recent call last):
  File "pdf2doc2.py", line 3, in <module>
    from pdf2docx import Converter
ImportError: No module named pdf2docx
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ python3 pdf2doc2.py 
Traceback (most recent call last):
  File "/home/rootroot/pdf2doc2.py", line 3, in <module>
    from pdf2docx import Converter
ModuleNotFoundError: No module named 'pdf2docx'
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ pip install pdf2docx
Defaulting to user installation because normal site-packages is not writeable
Collecting pdf2docx
  Downloading pdf2docx-0.5.6-py3-none-any.whl (148 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 148.4/148.4 KB 475.7 kB/s eta 0:00:00
Collecting opencv-python>=4.5
  Downloading opencv_python-4.7.0.72-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (61.8 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.8/61.8 MB 7.8 MB/s eta 0:00:00
Collecting fonttools>=4.24.0
  Downloading fonttools-4.39.3-py3-none-any.whl (1.0 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.0/1.0 MB 14.9 MB/s eta 0:00:00
Requirement already satisfied: numpy>=1.17.2 in ./.local/lib/python3.10/site-packages (from pdf2docx) (1.23.5)
Collecting PyMuPDF>=1.19.0
  Downloading PyMuPDF-1.22.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.1 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 14.1/14.1 MB 8.5 MB/s eta 0:00:00
Collecting python-docx>=0.8.10
  Downloading python-docx-0.8.11.tar.gz (5.6 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.6/5.6 MB 9.7 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... done
Collecting fire>=0.3.0
  Downloading fire-0.5.0.tar.gz (88 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 88.3/88.3 KB 3.1 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... done
Requirement already satisfied: six in /usr/lib/python3/dist-packages (from fire>=0.3.0->pdf2docx) (1.16.0)
Collecting termcolor
  Downloading termcolor-2.3.0-py3-none-any.whl (6.9 kB)
Collecting lxml>=2.3.2
  Downloading lxml-4.9.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (7.1 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.1/7.1 MB 5.6 MB/s eta 0:00:00
Building wheels for collected packages: fire, python-docx
  Building wheel for fire (setup.py) ... done
  Created wheel for fire: filename=fire-0.5.0-py2.py3-none-any.whl size=116951 sha256=94694033221a75c7c45708f1b1f670d3656b47aa32ecdc45d8c6442cdf8541ab
  Stored in directory: /home/rootroot/.cache/pip/wheels/90/d4/f7/9404e5db0116bd4d43e5666eaa3e70ab53723e1e3ea40c9a95
  Building wheel for python-docx (setup.py) ... done
  Created wheel for python-docx: filename=python_docx-0.8.11-py3-none-any.whl size=184507 sha256=4bf244d8f5006e4c3bf7c9c5990a1731cfce7544749130e0f13997e02f44aa1d
  Stored in directory: /home/rootroot/.cache/pip/wheels/80/27/06/837436d4c3bd989b957a91679966f207bfd71d358d63a8194d
Successfully built fire python-docx
Installing collected packages: termcolor, PyMuPDF, opencv-python, lxml, fonttools, python-docx, fire, pdf2docx
Successfully installed PyMuPDF-1.22.2 fire-0.5.0 fonttools-4.39.3 lxml-4.9.2 opencv-python-4.7.0.72 pdf2docx-0.5.6 python-docx-0.8.11 termcolor-2.3.0
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ pip install win32com
Defaulting to user installation because normal site-packages is not writeable
ERROR: Could not find a version that satisfies the requirement win32com (from versions: none)
ERROR: No matching distribution found for win32com
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ pip install  pypiwin32
Defaulting to user installation because normal site-packages is not writeable
Collecting pypiwin32
  Downloading pypiwin32-223-py3-none-any.whl (1.7 kB)
  Downloading pypiwin32-219.zip (4.8 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.8/4.8 MB 4.0 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error
  
  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [7 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-rkpzj2x6/pypiwin32_8a66222935a047f88d26fcc7255f3678/setup.py", line 121
          print "Building pywin32", pywin32_version
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)?
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ sudo pip install python-docx
[sudo] password for rootroot: 
Collecting python-docx
  Downloading python-docx-0.8.11.tar.gz (5.6 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.6/5.6 MB 3.7 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... done
Collecting lxml>=2.3.2
  Downloading lxml-4.9.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (7.1 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.1/7.1 MB 7.4 MB/s eta 0:00:00
Building wheels for collected packages: python-docx
  Building wheel for python-docx (setup.py) ... done
  Created wheel for python-docx: filename=python_docx-0.8.11-py3-none-any.whl size=184507 sha256=ed4fb4189610b03122beb8714709c37307ccfa92dc1b5ea1e4725240712f5d3c
  Stored in directory: /root/.cache/pip/wheels/80/27/06/837436d4c3bd989b957a91679966f207bfd71d358d63a8194d
Successfully built python-docx
Installing collected packages: lxml, python-docx
Successfully installed lxml-4.9.2 python-docx-0.8.11
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ ll *.docx
-rwxr--r-- 1 rootroot rootroot 80786  5月  4 20:56 MIDE-599.google.docx*
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ import docx
Command 'import' not found, but can be installed with:
sudo apt install graphicsmagick-imagemagick-compat  # version 1.4+really1.3.38-1ubuntu0.1, or
sudo apt install imagemagick-6.q16                  # version 8:6.9.11.60+dfsg-1.3ubuntu0.22.04.3
sudo apt install imagemagick-6.q16hdri              # version 8:6.9.11.60+dfsg-1.3ubuntu0.22.04.3
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ pyton3
Command 'pyton3' not found, did you mean:
  command 'python3' from deb python3 (3.10.6-1~22.04)
Try: sudo apt install <deb name>
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ python3
Python 3.10.6 (main, Mar 10 2023, 10:55:28) [GCC 11.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 
>>> import docx
>>> 
>>> doc = docx.Document('MIDE-599.google.docx')
>>> 
>>> docText = '\n'.join([paragraph.text for paragraph in doc.paragraphs])
>>> 
>>> print(docText) 

 

 


1、遍历input目录中的全部docx档。
input2.py

import os

file = 'input'

for root, dirs, files in os.walk(file):
    for file in files:
        path = os.path.join(root, file)
        print(path)


rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ python input2.py 
input/SSNI-205.google.docx
input/TEK-072.google.docx
input/TEK-076.google.docx
input/OAE-101.google.docx
input/SIVR-001.google.docx
input/OAE-165.google.docx
input/SSNI-101.google.docx
input/SIVR-012 2.google.docx
input/SIVR-002.google.docx
input/SSNI-009.google.docx
input/SIVR-003.google.docx
input/SIVR-017 2.google.docx
input/SSNI-493.google.docx
input/SNIS-896.google.docx
input/SSNI-409.google.docx
input/SSNI-730.google.docx
input/SIVR-034 1.google.docx
input/SIVR-067 1.google.docx
input/OFJE-189.google.docx
input/SIVR-067 3.google.docx
input/SIVR-044 2.google.docx
input/SSNI-542.google.docx
input/SIVR-034 2.google.docx
input/SIVR-016 2.google.docx
input/SIVR-016 1.google.docx
input/SSNI-229.google.docx
input/SSNI-030.google.docx
input/SSNI-127.google.docx
input/SIVR-033 5.google.docx
input/SIVR-061 1.google.docx
input/SNIS-986.google.docx
input/SIVR-033 2.google.docx
input/SIVR-033 3.google.docx
input/SSNI-516.google.docx
input/SSNI-388.google.docx
input/SSNI-473.google.docx
input/SNIS-872.google.docx
input/SIVR-067 2.google.docx
input/OFJE-139 2.google.docx
input/SNIS-786.google.docx
input/SSNI-674.google.docx
input/SSNI-178.google.docx
input/TEK-083Ö»ÓÐÒôƵ.google.docx
input/SNIS-964.google2.docx
input/SSNI-644.google.docx
input/SSNI-301.google.docx
input/TEK-080.google.docx
input/SIVR-044 1.google.docx
input/SSNI-566.google.docx
input/TEK-071.google.docx
input/TEK-097.google.docx
input/SSNI-279.google.docx
input/SIVR-061 4.google.docx
input/SSNI-344.google.docx
input/SIVR-033 1.google.docx
input/SSNI-618.google.docx
input/SIVR-017 1.google.docx
input/MIDE-599.google.docx
input/SNIS-850 1.google.docx
input/SIVR-061 2.google.docx
input/SSNI-254.google.docx
input/pSSNI-473.google.docx
input/SSNI-589.google.docx
input/SIVR-015 1.google.docx
input/SSNI-432.google.docx
input/SSNI-152.google.docx
input/SIVR-061 3.google.docx
input/SNIS-800.google.docx
input/SSNI-322.google.docx
input/SSNI-077.google.docx
input/SNIS-919.google.docx
input/SSNI-452.google.docx
input/SIVR-033 6.google.docx
input/TEK-073.google.docx
input/TEK-081Ö»ÓÐÒôƵ.google.docx
input/OFJE-139 1.google.docx
input/SNIS-850 2.google.docx
input/SNIS-964.google.docx
input/SIVR-033 4.google.docx
input/SSNI-703.google.docx
input/SIVR-015 2.google.docx
input/TEK-067.google.docx
input/SSNI-054.google.docx
input/SIVR-012 1.google.docx
input/SIVR-017 3.google.docx
input/SIVR-034 3.google.docx
input/TEK-079Ö»ÓÐÒôƵ.google.docx
input/OFJE-236.google.docx
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 

 


2、docx档转txt档。
docx3.py

import docx
doc = docx.Document('MIDE-599.google.docx')
docText = '\n'.join([paragraph.text for paragraph in doc.paragraphs])
#print(docText)

f=open("MIDE-599.google.txt","wb")
#f.write(response.content)    
#f.write(docText)
#f.write(docText.decode())
f.write(docText.encode())
f.close()


rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ python3 docx3.py 
Traceback (most recent call last):
  File "/home/rootroot/docx3.py", line 8, in <module>
    f.write(docText)
TypeError: a bytes-like object is required, not 'str'
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 
rootroot@rootroot-adol-ADOLBOOK-I421UAY-ADOL14UA:~$ 

 


3、TXT档保存在output目录中。
input4.py

import os
import docx

file = 'input'

for root, dirs, files in os.walk(file):
    for file in files:
        portion = os.path.splitext(file)
        if portion[1]==".docx":
            #doc = docx.Document('MIDE-599.google.docx')
            path_docx = os.path.join(root, file)
            #doc = docx.Document('path_docx')
            doc = docx.Document(path_docx)
            docText = '\n'.join([paragraph.text for paragraph in doc.paragraphs])
            
            newname = portion[0] + ".txt"
            #path = os.path.join(root, file)
            #path = os.path.join(root, newname)
            path = os.path.join("output/", newname)
            #print(path)
            
            #f=open("MIDE-599.google.txt","wb")
            f=open(path,"wb")
            f.write(docText.encode())
            f.close()

 

 

在Ubuntu22.04 下是 UTF-8格式,WIN10下默认的是ANSI格式。

不能用BeyondCompare3.5直接比对!


参考资料:
ubuntu python docx txt
ubuntu python 批量 docx txt
python ubuntu 遍历目录
ubuntu python docx
ubuntu python 遍历
python如何遍历文件夹下的文件 python遍历文件夹中的文件
python 更换 扩展名
Python修改文件后缀名

https://blog.csdn.net/weixin_44735393/article/details/119747619
python批量修改文件扩展名

import os
dir='/home/下载/'#文件所在目录
files = os.listdir(dir)#列出目录下所有文件名
files.sort()#按文件名排序
#print('files',files)
#遍历文件
for name in files:
    lname=name.split('.')#将文件名分割成名+后缀
    print(lname)
    if lname[-1]=='txt':#判断
        print(lname)
        newname=lname[0]+'.tif'#修改
        print(newname)
        os.rename(dir+name, dir+newname)#写进文件夹


http://bjst.net.cn/ask/show-392333.html
精选回答:回答日期:2022年11月27日 以下内容仅供参考!


https://wenku.baidu.com/view/710331a94593daef5ef7ba0d4a7302768f996f55.html
Python修改文件后缀名


https://blog.csdn.net/faihung/article/details/90516180
成功解决TypeError: a bytes-like object is required, not 'str'
解决思路
问题出在python3.5和Python2.7在套接字返回值解码上有区别:
python bytes和str两种类型可以通过函数encode()和decode()相互转换,
str→bytes:encode()方法。str通过encode()方法可以转换为bytes。
bytes→str:decode()方法。如果我们从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法。


https://www.zhangshengrong.com/p/281oqB7DNw/
Ubuntu下使用python读取doc和docx文档的内容方法
sudo pip install python-docx


https://www.cnblogs.com/vulcat/p/12547027.html
用python实现批量替换.doc文件文件内容


https://blog.csdn.net/wx17343624830/article/details/127425605
使用Python实现对word的批量操作


 

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

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

相关文章

Origin如何绘制二维图形?

文章目录 0.引言1.函数绘图2.线图3.符号图4.点线符号图5.柱状/条形/饼图6.多面板/多轴图7.面积图8.专业图9.主题绘图 0.引言 因科研等多场景需要绘制专业的图表&#xff0c;笔者对Origin进行了学习&#xff0c;本文通过《Origin 2022科学绘图与数据》及其配套素材结合网上相关资…

stable diffusion模型讲解

AI模型最新展现出的图像生成能力远远超出人们的预期&#xff0c;直接根据文字描述就能创造出具有惊人视觉效果的图像&#xff0c;其背后的运行机制显得十分神秘与神奇&#xff0c;但确实影响了人类创造艺术的方式。 AI模型最新展现出的图像生成能力远远超出人们的预期&#xf…

PyCharm使用 Anaconda安装TensorFlow

1.安装python全家桶Anaconda 1.1 官网 https://www.anaconda.com/ 进入官网后如下图所示&#xff0c;点击Download即可开始下载&#xff08;若无法下载&#xff0c;请转至清华源下载&#xff09; 1.2 清华 https://repo.anaconda.com/archive/ 2.Anaconda安装 点击Next -…

libssh2交叉编译和测试

目录 官方地址&#xff1a;https://www.libssh2.org/ 1.源码下载 2.交叉编译 3.测试代码 官方地址&#xff1a;https://www.libssh2.org/ 正常来说&#xff0c;看官网说明和例子都能正常编译和使用&#xff0c;想偷个懒的就参考以下步骤。 1.源码下载 我当前看到的版本是li…

【二分查找】求解单调方程的解 C++实现

目录 1 问题2 想法3 二分查找4 实现4-1 伪代码说明4-2 C11 1 问题 有函数 f ( x ) a x ( a > 1 ) f(x)a^x(a>1) f(x)ax(a>1) ,单调递增&#xff0c;现在给一个正整数 N N N&#xff0c;求使得 f ( x ) N f(x)N f(x)N的正整数解 x x x。    2 想法 x l o g a N xl…

Spring Boot集成ShardingSphere分片利器 AutoTable (二)—— 自动分片算法示例 | Spring Cloud 46

一、前言 在前面我们通过以下章节对ShardingSphere的AutoTable 有了基础的了解&#xff1a; Spring Boot集成ShardingSphere分片利器 AutoTable &#xff08;一&#xff09;—— 简单体验 | Spring Cloud 45 书接上回&#xff0c;本章进行对AutoTable 支持的自动分片算法进行…

【JAVAEE】使用wait()方法和notify()方法解决线程不安全中的有序性问题

目录 1.wait()方法 2.notify()方法 3.notifyAll()方法 4.wait()和sleep()方法的区别 由于线程之间是抢占式执行的&#xff0c;因此线程之间执行的先后顺序难以预知。但是在实际开发中有时候我们希望合理的协调多个线程之间的执行先后顺序。 完成这个协调工作&#xff0c;主…

QML之HTML5画布移植(Porting from HTML5 Canvas)

移植一个HTML5画布图像到QML画布非常简单。在成百上千的例子中&#xff0c;我们选择了一个来移植。 螺旋图形&#xff08;Spiro Graph&#xff09; 我们使用一个来自Mozila项目的螺旋图形例子来作为我们的基础示例。原始的HTML5代码被作为画布教程发布。 下面是我们需要修改…

OpenGL(十)——基础光照

目录 一、前言 二、环境光照 三、漫反射光照 3.1 法向量 3.2顶点着色器 3.3 VAO属性解释 3.4 片段着色器 四、镜面光照 4.1 片段着色器 一、前言 现实世界光照十分复杂&#xff0c;冯氏光照模型是对现实世界光照的抽象&#xff0c;主要由3部分组成&#xff0c;环境amb…

【JAVAEE】使用synchronized关键字和volatile关键字解决线程安全问题中的原子性,内存可见性和有序性问题

目录 1.synchronized关键字---监视器锁monitor lock 1.1synchronized的特性 互斥 刷新内存 可重入 1.3synchronized使用注意事项 2.volatile关键字 2.1volatile保证内存可见性问题 MESI缓存一致性协议 内存屏障 2.2volatile解决有序性问题 3.总结synchronized和vola…

ELK -- kibana 用nginx代理后无法访问

背景&#xff1a; 本地搭建好elk后&#xff0c;一切正常&#xff0c;后面改成用nginx代理kibana的5601端口&#xff0c;发现代理后无法正常访问&#xff08;未代理的地址可正常访问&#xff09;&#xff0c;花了很多时间去查问题&#xff0c;报错基本都是http://ip:port/spaces…

Leetcode刷题之复制带随机指针的链表

生命不是安排&#xff0c;而是追求&#xff0c;人生的意义也许永远没有答案&#xff0c;但也要尽情感受这种没有答案的人生。 --弗吉尼亚. 伍尔芙 目录 前言&#xff1a; &#x1f338;一.复制带随机指针的链表 &#x1f305;1.复制结点链接到原本链表每一个结点的…

24个强大的HTML属性,每个资深Web工程师都应该掌握!

HTML 属性非常多&#xff0c;除了基本的一些属性外&#xff0c;还有很多很有用的功能性特别强大的属性&#xff1b; 本文将介绍24个强大的HTML属性&#xff0c;这些属性可以让你的网站更加动态和交互&#xff0c;让用户感到更加舒适和愉悦。 让我们一起来探索这24个强大的HTML…

进程优先级+环境变量++地址空间+虚拟地址空间

索引 一.进程优先级二.环境变量1.通过代码如何获取环境1.通过第三个命令行参数获得2.根据第三方变量environ获取3.通过系统调用获取环境变量 2.验证环境变量可以被子进程继承下去 三.验证地址空间1.验证程序地址空间2.证明地址空间不是物理地址 四.虚拟地址空间虚拟地址空间存在…

BI财务智能分析,让企业管理更上一层楼

智能财务建设既可以看作是财务管理工作在经济社会数字化转型的全面开启&#xff0c;也可以看作是财务职能在以数字化技术为支撑&#xff0c;形成对内提升单位管理水平和风险管控能力、对外服务财政管理和宏观经济治理的会计职能拓展&#xff0c;究其本质则是在财务数字化转型升…

简单介绍之隔离级别与分布式事务

一&#xff0c;分布式系统与环境问题 概念 系统可以笼统分为集中式系统和分布式系统。 集中式系统就是由一台或多台主计算机组成中心节点&#xff0c;系统所有功能均由其集中处理。 分布式系统是硬件和软件组件分布不同的网络计算机上&#xff0c;彼此之间仅仅通过消息传递进…

植被参数光学遥感反演方法(Python)及遥感与生态模型数据同化算法技术应用

传统的地面实测方法能够得到比较准确的植被参数&#xff08;如叶面积指数、覆盖度、生物量、叶绿素、干物质、叶片含水量、FPAR等&#xff09;&#xff0c;但其获取信息有限&#xff0c;难以满足大范围提取植被参数的需求&#xff0c;尤其在异质地表区域。遥感技术的发展为植被…

C++学习day--07 字符串

1、黑客攻击系统-用户输入的优化 第 1 节 项目需求 1. 用户登录时&#xff0c;用户可能输入很长的用户名。 2. 使用 char 类型和 int 类型&#xff0c;表示用户名和密码&#xff0c;不安全。 第 2 节 项目实现 #include <iostream> #include <Windows.h> …

MacBook重置与推荐软件配置

Mac OS 12.6.5 前言重置初始化配置说明 GitJava 8 & Maven & MysqlJava 8mavenMySQL配置 MotrixDBeaver添加aliyun的maven至DBeaver添加MySQL VS CodeSteamTyporaiStas Menus 前言 用了一年的机械革命游戏本,机器加外设20斤的重量背过几次出门后就再也不想带出门了,运行…

PyYaml反序列化漏洞

0x01 HDCTF 遇到预期解是考的yaml了&#xff0c;前来学习下 语法 语法就不贴了&#xff0c;其他文章有介绍 语法和 yml配置文件的 语法差不多 就不一一介绍 漏洞成因与利用 PyYaml < 5.1 在python 中 pyyaml是提供 python 和Yaml 两种语言的转换&#xff0c;与pickle 类…