python操作excel以及word文档,pdf文档

摘要:
1.读取excel importxlrd#以打开excel data=xlrd。open_workbook(“Gitee.xlsx”)table=数据。sheet_ by_ Name(“程序开发”)##所选表单页#print(table.rows)#多少行#print(table.ncols)#有多少列#print(table.row_values(1))#获取范围的第一行数据(1,81

1.读excel

import xlrd

# 打开excel
data = xlrd.open_workbook("Gitee.xlsx")

table = data.sheet_by_name("程序开发")  # # 选择的表单页

# print(table.nrows)   # 多少行
# print(table.ncols)   # 多少列
# print(table.row_values(1))  # 取出第一行数据


for i in range(1, 81):

    print(table.row_values(i))

2.写excel ---openpyxl

#
from openpyxl import Workbook


wb = Workbook()  # 先生成一个工作簿
wb1 = wb.create_sheet('index3',0)  # 创建一个表单页  后面可以通过数字控制位置
wb2 = wb.create_sheet('index1')
wb1.title = 'login'  # 后期可以通过表单页对象点title修改表单页名称

wb1['A3'] = 666
wb1['A4'] = 444
wb1.cell(row=6,column=3,value=88888888)
wb1['A5'] = '=sum(A3:A4)'
#
# wb2['G6'] = 999
wb1.append(['username','age','hobby'])

wb1.append(['nick',28,])
wb1.append(['nick','','秃头'])

# 保存新建的excel文件
wb.save('吴凯.xlsx')

3.写文件 xlwt

            import xlwt

            #  创建一个workbook 设置编码
            workbook = xlwt.Workbook(encoding='utf-8')

            # 创建一个worksheet
            worksheet = workbook.add_sheet('sheet')

            worksheet.write(0, 0, label='核心参数')
            worksheet.write(0, 1, label='参数1')        
            workbook.save('lichuang.xls')

 4.with open 操作excel

import csv

with open('data.csv', 'a', newline="",encoding='utf-8') as filecsv:
    csvwriter = csv.writer(filecsv, delimiter=',')
    csvwriter.writerow(['凯帅','美女','人才'])

 5.操作word文档

import docx

file = docx.Document("D:code客户脚本制作_guojieli出院小结.docx")

print("段落数:",str(len(file.paragraphs)))

# 输出每一段
list1 = []
for para in file.paragraphs:
    # print(para.text)
    list1.append(para.text)



# 输出段落编号及段落内容
for i in range(len(file.paragraphs)):
    print("第:"+str(i)+"段的内容是:"+file.paragraphs[i].text)

 6.excel格式操作

from openpyxl import Workbook
from openpyxl.styles import Alignment,PatternFill

wb = Workbook()

wb1 = wb.create_sheet('sh', 0)

wb1.merge_cells("A1:A2") # 合并表单

# wb1.merge_cells("A2:C2")
# wb1.merge_cells("A1:A2")

wb1.cell(1, 1).value = '你就是个大石坝' # 表单赋值
wb1['A1'].fill = PatternFill(fgColor="00C0C0C0", fill_type='solid') #  修改颜色
wb1['A1'].alignment = Alignment(horizontal="center", vertical="center") # 合并居中
wb1.row_dimensions[3].height = 20 # 加高
wb1.column_dimensions['D1'].width = 30 # 加宽
# wb1.cell(1, 2).value = '2'
# wb1.cell(1, 3).value = '3'
# wb1.cell(2, 1).value = '4'
# wb1.cell(2, 2).value = '5'
# wb1.cell(2, 3).value = '6'
# wb1.merge_cells("A1:D2")


# wb1.append(["美女"])
nows = wb1.max_row
print(nows)
# wb1.append(["帅哥"])
nows = wb1.max_row
print(nows)
wb.save('data.xlsx')

7.操作pdf

# import importlib, sys
# importlib.reload(sys)
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 PDFTextExtractionNotAlloweddef parse(DataIO):
    # 用文件对象创建一个PDF文档分析器
    parser = PDFParser(DataIO)
    # 创建一个PDF文档
    doc = PDFDocument()
    # 分析器和文档相互连接
    parser.set_document(doc)
    doc.set_parser(parser)
    # 提供初始化密码,没有默认为空
    doc.initialize()
    # 检查文档是否可以转成TXT,如果不可以就忽略
    if not doc.is_extractable:
        raise PDFTextExtractionNotAllowed
    else:
        # 创建PDF资源管理器,来管理共享资源
        rsrcmagr = PDFResourceManager()
        # 创建一个PDF设备对象
        laparams = LAParams()
        # 将资源管理器和设备对象聚合
        device = PDFPageAggregator(rsrcmagr, laparams=laparams)
        # 创建一个PDF解释器对象
        interpreter = PDFPageInterpreter(rsrcmagr, device)
        # 循环遍历列表,每次处理一个page内容
        # doc.get_pages()获取page列表
        for page in doc.get_pages():
            interpreter.process_page(page)
            # 接收该页面的LTPage对象
            layout = device.get_result()
            str = ""
            for x in layout:
                try:
                    if (isinstance(x, LTTextBoxHorizontal)):
                        result = x.get_text()
                        str = str + result
                        # print(result)
                except:
                    print("Failed")
      
            # time.sleep(20)

def main():
    with open(r'D:code客户pdf转excel提取_穷人也要买东东Supplier release 232492 20200807201958.PDF', 'rb') as pdf_html:
        parse(pdf_html)

main()

免责声明:文章转载自《python操作excel以及word文档,pdf文档》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇导出数据到excelDSC搭建下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

pycharm上传文件目录到Linux

前言:相信不少学Python或者正在编写项目的Python爱好者都在用pycharm,有时候要上传文件目录到Linux服务器,比较麻烦,但是Pycharm已经有这个功能了,详细实现如下 1、打开Pycharm编辑器,选择选项Tools-Deployment-Configuration 2、填写命名,这个可以随便起,选择Type为SFTP 3、填写服务...

Mac下Python和Pycharm之virtualenv

一、python如何配置virtualenv   1.安装virtualenv pip3 install virtualenvpip install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenvpip3 install --upgrade pip 2.创建目录 mkdir Myproject...

python学习笔记-Pycharm远程连接服务器的Python虚拟环境(Virtualenv)

Virtualenv可以作为一个独立的Python虚拟环境工具,并能够建立多个相互独立,互不影响的Python工作环境。 主要解决在运行多个项目时,由于它们对应的运行环境需求不同,可能会导致项目无法正常运行的问题。 服务器设置内容: 安装Virtualenv命令: pip install virtualenv 给自己的项目创建python虚拟环境: vi...

Python(2.7)-标准输入输出,标准错误输出

sys模块,标准输入,标准输出和标准错误输出 1、标准输入sys.stdin:对应的操作是input sys.stdin.readline():只输入(获取)一行,sys.stdin.readline()会将标准输入全部获取,包括末尾的' ',所以一般会在末尾加上.strip()或.strip(“ ”)去掉末尾的换行符 >>> impor...

python用sqlite3模块操作sqlite数据库-乾颐堂

SQLite是一个包含在C库中的轻量级数据库。它并不需要独立的维护进程,并且允许使用非标准变体(nonstandard variant)的SQL查询语句来访问数据库。 一些应用可是使用SQLite保存内部数据。它也可以在构建应用原型的时候使用,以便于以后转移到更大型的数据库。 SQLite的主要优点: 1. 一致性的文件格式: 在SQLite的官方文档中是...

python的调试

在python脚本中可以用pdb进行调试,具体方法如下: 1.使用run语句调试,格式为: run(statement[,globals[,locals]]) 参数含义如下 statement:要调试的语句块,以字符串的形式globals:可选参数,设置statement运行的全局环境变量locals:可选参数,设置statement运行的局部环境变量 以...