python学习笔记(十八) word、csv、pdf文件读写、播放音乐,电脑远程连接

目录

一、word文件操作

二、csv文件操作:

三、pdf操作:

四、播放音乐:

五、远程连接:


 

一、word文件操作

1、创建word文件

import win32com
import win32com.client
import os


def makeWordFile(filename, name):
	word = win32com.client.Dispatch('Word.Application')
	# 让文档可见
	word.Visible = True
	# 创建文档
	doc = word.Documents.Add()
	# 写内容
	# 从头开始写
	r = doc.Range(0, 0)
	r.InsertAfter('你好' + name + '\n')
	r.InsertAfter('      word。。。\n')
	# 存储文件
	doc.SaveAs(filename)
	# 关闭文件
	doc.Close()
	# 退出word
	word.Quit()


filenames = ['张三', '李四', '王五']
for name in filenames:
	filename = os.path.join(os.getcwd(), name)
	makeWordFile(filename, name)

2、读取doc和docx格式文档

import win32com
import win32com.client


def readWordFile(path):
	# 调用系统word功能,可以处理doc和docxl两种文件
	mw = win32com.client.Dispatch('Word.Application')
	# 打开文件
	doc = mw.Documents.Open(path)
	# 从文件里取出每一段
	for paragraph in doc.Paragraphs:
		line = paragraph.Range.Text
		print(line)
	# 关闭文件
	doc.Close()
	# 退出word
	mw.Quit()

path = r"文档路径"
readWordFile("path")

 

二、csv文件操作:

1、读取csv文件

import csv

def readCsv(path):
	infoList = []
	with open(path,"r")as f:
		allFileInfo = csv.reader(f)
		for row in allFileInfo:
			infoList.append(row)
	return infoList




path =r"文件路径"
info = readCsv(path)
# readCsv(path)

2、写csv文件:

import csv
def writeCsv(path,data):
	with open(path,"w") as f:
		writer = csv.writer(f)
		for rowData in data:

			writer.writerow(rowData)


path =r"文档路径"
writeCsv(path,[[1,2,3],[4,5,6],[7,8,9]])

 

三、pdf操作:

1、读取pdf文件:

import sys
import importlib
importlib.reload(sys)


#安装pdfminter库
#pip install pdfminter3K

from pdfminer.pdfparser import PDFParser,PDFDocument
from pdfminer.pdfinterp import PDFResourceManager,PDFPageInterpreter
from pdfminer.converter import PDFPageAggregator
from pdfminer.layout import LTTextBoxHorizontal,LAParams
from pdfminer.pdfinterp import PDFTextExtractionNotAllowed

def readPdf(path,toPath):
	#以二进制形式打开pdf文件
	f = open(path,"rb")

	#创建一个pdf文档分析器
	parser = PDFParser(f)

	#创建一个pdf文档
	pdfFile = PDFDocument()
	#链接分析器与文档对象
	parser.set_document(pdfFile)
	pdfFile.set_parser(parser)

	#提供初始化密码
	pdfFile.initialize()

	#检测文档是否提供txt转换
	if not pdfFile.is_extractable:
		raise PDFTextExtractionNotAllowed
	else:
		#解析数据
		#数据管理器
		manager = PDFResourceManager()
		#创建一个pdf设备对象
		laparams = LAParams()
		device = PDFPageAggregator(manager,laparams=laparams)
		#解释器对象
		interpreter = PDFPageInterpreter(manager,device)

		#开始循环处理,每次处理一页
		for page in pdfFile.get_pages():
			interpreter.process_page(page)
			layout = device.get_result()
			for x in layout:
				if (isinstance(x,LTTextBoxHorizontal)):
					with open(toPath,"a")as f:
						str = x.get_text()
						print(str)
						f.write(str+"\n")

path = r"F:\untitled\自动化办公\1.pdf"
toPath = r"F:\untitled\自动化办公\a.txt"
readPdf(path,toPath)

四、播放音乐:

#pip install pygame #安装必要的三方库

import time
import pygame

#音乐路径
filePath = r"C:\Users\Music\周杰伦 - 稻香.mp3"

#初始化
pygame.mixer.init()

#加载音乐
track = pygame.mixer.music.load(filePath)

#播放
pygame.mixer.music.play()

#暂停
time.sleep(10)

#暂停
#pygame.mixer.music.pause()

#停止
pygame.mixer.music.stop()

五、远程连接:

import telnetlib

#可能需要对方关闭防火墙以及开启telnet功能


def telnetDoSomething(IP, user, passwd, command):
	# 链接服务器
	telnet = telnetlib.Telnet(IP)
	# 设置调试级别
	telnet.set_debuglevel(2)

	# 读取用户信息
	rt = telnet.read_until('Login username:'.encode('utf-8'))
	# 写入用户名,'\r\n'是回车
	telnet.write((user + '\r\n').encode('utf-8'))
	# 读取密码信息
	rt = telnet.read_until('Login password:'.encode('utf-8'))
	# 写入密码,'\r\n'是回车
	telnet.write((passwd + '\r\n').encode('utf-8'))
	# 读取验证IP信息
	rt = telnet.read_until('Domain name:'.encode('utf-8'))
	# 写入IP,'\r\n'是回车
	telnet.write((IP + '\r\n').encode('utf-8'))

	# 登录成功,写指令
	rt = telnet.read_until('>'.encode('utf-8'))
	telnet.write((command + '\r\n').encode('utf-8'))
	# 上面命令执行成功,会继续>
	# 失败,一般不会是>
	rt = telnet.read_until('>'.encode('utf-8'))
	# 断开链接
	telnet.close()
	return True


if __name__ == '__main__':
	IP = ''
	user = '电脑名'
	passwd = '密码'
	command = 'tasklist'
	telnetDoSomething(IP, user, passwd, command)

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值