用Python操作PPT的办公自动化教程_python怎么操作ppt模拟enter(1)

如何自学黑客&网络安全

黑客零基础入门学习路线&规划

初级黑客
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)
恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k

到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?

如果你想要入坑黑客&网络安全,笔者给大家准备了一份:282G全网最全的网络安全资料包评论区留言即可领取!

7、脚本编程(初级/中级/高级)
在网络安全领域。是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力.

如果你零基础入门,笔者建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习;搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP, IDE强烈推荐Sublime;·Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,不要看完;·用Python编写漏洞的exp,然后写一个简单的网络爬虫;·PHP基本语法学习并书写一个简单的博客系统;熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选);·了解Bootstrap的布局或者CSS。

8、超级黑客
这部分内容对零基础的同学来说还比较遥远,就不展开细说了,附上学习路线。
img

网络安全工程师企业级学习路线

img
如图片过大被平台压缩导致看不清的话,评论区点赞和评论区留言获取吧。我都会回复的

视频配套资料&国内外网安书籍、文档&工具

当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

img
一些笔者自己买的、其他平台白嫖不到的视频教程。
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

图片

从shape中找paragraph

from pptx import Presentation
from pptx.util import Inches
# 1. 得到幻灯片对象
prs = Presentation("demo.pptx")
# 2. 获取prs对象中的每一页PPT
for slide in prs.slides:
  # 3. 遍历获取每页PPT中的内容
    for shape in slide.shapes: 
      # 4. 判断是否存在文本
        if shape.has_text_frame:
      # 5. 获取shape中的文本
            text_frame = shape.text_frame
            # 6. 获取text_frame中的段落内容
            for paragraph in text_frame.paragraphs:
              # 7. 打印段落内容
               print(paragraph.text)
               print('----------paragraph------------')

图片

综合应用

编写一个Python程序,要求

(1)打开demo.pptx

(2)按照paragraph分段,转换成为word文档

(3)保存为demo.docx

from pptx import Presentation
from docx import Document

doc = Document()
prs = Presentation("婚礼策划师的最爱.pptx")
ls = []
for slide in prs.slides:
 for shape in slide.shapes:
  if shape.has_text_frame:
   text_frame = shape.text_frame
   for paragraph in text_frame.paragraphs:
    if paragraph.text != '':
     doc.add_paragraph(paragraph.text)

doc.save("demo.docx")

向PPT写入内容

首先了解模板和占位符

Slides_layouts:版式,一个幻灯片母版由多个版式组成,索引从0开始。

Placeholder:占位符:存在PPT母版里面的幻灯片的某一部件:Placeholder

图片

在创建一页ppt时,需要指定对应的布局,在该模块中, 内置了以下9种布局

  1. Title
  2. Title and Content
  3. Section Header
  4. Two Content
  5. Comparison
  6. Title Only
  7. Blank
  8. Content with Caption
  9. Picture with Caption

通过数字下标0到9来访问,指定布局添加一页ppt的用法如下:

创建placeholders

from pptx import Presentation

prs = Presentation() #初始化一个空pptx文档
slide = prs.slides.add_slide(prs.slide_layouts[0])  # 用第一个母版生成一页ppt
for shape in slide.placeholders:         # 获取这一页所有的占位符
    phf = shape.placeholder_format
    print(f'{phf.idx}--{shape.name}--{phf.type}')  # id号--占位符形状名称-占位符的类型
    shape.text = f'{phf.idx}--{shape.name}--{phf.type}'
prs.save("new_template.pptx")

图片

也可以一次添加多个

from pptx import Presentation

prs = Presentation() #初始化一个空pptx文档
i = 0
while i <= 10:
    slide = prs.slides.add_slide(prs.slide_layouts[i])  
    i = i+1
    for shape in slide.placeholders:         # 获取这一页所有的占位符
        phf = shape.placeholder_format
        print(f'{phf.idx}--{shape.name}--{phf.type}')  # id号--占位符形状名称-占位符的类型
        shape.text = f'{phf.idx}--{shape.name}--{phf.type}'
prs.save("new_template.pptx")

图片

向占位符中添加内容

主要使用:

shape.text = 字符串
prs.save(文件路径)
from pptx import Presentation

prs = Presentation()
# 用第一个母版生成一页ppt
slide = prs.slides.add_slide(prs.slide_layouts[1])
# 获取当前页的标题
title_shape = slide.shapes.title
# 向标题中添加文本
title_shape.text = '宋宋的Python专栏'
# 获取副标题
subtitle = slide.shapes.placeholders[1]
# 副标题中添加文本
subtitle.text = '宋宋是一个爱美的大女生'

# 副标题中添加新段落
new_paragraph1 = subtitle.text_frame.add_paragraph()
# 向段落中添加文本
new_paragraph1.text = '我是一个专注学习技术的大女生'
new_paragraph1.level = 1

new_paragraph2 = subtitle.text_frame.add_paragraph()
new_paragraph2.text = '我是一个认真写文章的大女生哈哈哈'
new_paragraph2.level = 2

# 保存内容
prs.save("写入内容1.pptx")

图片

空白的PPT模板中添加文本框和图形

from pptx import Presentation
from pptx.util import Cm,Pt,Inches
from pptx.enum.shapes import MSO_SHAPE

prs = Presentation('写入内容1.pptx')
slide = prs.slides.add_slide(prs.slide_layouts[6]) # 6的layout中是一个空白的Slider,里面没有占位符

# 单独向里面添加文本框和图片
left = top = width = height =Cm(3)  # # left,top为相对位置,width,height为文本框大小。满足条件顺序是左>上>右>下
text_box = slide.shapes.add_textbox(left,top,width,height)
tf = text_box.text_frame
tf.text = "欢迎来到宋宋的Python专栏"

p = tf.add_paragraph()
p.text = "宋宋的Python专栏,有20天学会Python基础,20天学会爬虫,20天学会数据分析,还有干活趣味文章!"
p.font.bold = True
p.font.size = Pt(15)

# 添加图形

slide1 = prs.slides.add_slide(prs.slide_layouts[6]) 
shapes = slide1.shapes
left = top = width = height = Inches(1.0)
shape = shapes.add_shape(MSO_SHAPE.ROUNDED_RECTANGLE, left, top, width, height)

prs.save("写入内容1_new.pptx")

图片

案例

现有一个公益捐书项目,有很多学生参与了本次活动,为了嘉奖这些学生,决定给每位学生发一张奖状。参与捐赠的学生名单和捐书数量都在students.xlsx中。

  1. 读取Excel中的数据
  2. 读取做好的PPT模板
  3. 将每位同学的姓名和捐书数量设置到PPT上
  4. 保存PPT

模版样式如下:

图片

学生名单信息:

图片

代码如下:



### 给大家的福利


**零基础入门**


对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。


![](https://img-blog.csdnimg.cn/img_convert/95608e9062782d28f4f04f821405d99a.png)


同时每个成长路线对应的板块都有配套的视频提供:


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a91b9e8100834e9291cfcf1695d8cd42.png#pic_center)


因篇幅有限,仅展示部分资料

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化资料的朋友,可以点击这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

  • 27
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值