精华内容
下载资源
问答
  • 利用Python将多个excel文件合并为一个文件思路利用python xlrd包读取excle文件,然后将文件内容存入一个列表中,再利用xlsxwriter将内容写入到一个新的excel文件中。完整代码# -*- coding: utf-8 -*-#将多个Excel...

    利用Python,将多个excel文件合并为一个文件

    思路

    利用python xlrd包读取excle文件,然后将文件内容存入一个列表中,再利用xlsxwriter将内容写入到一个新的excel文件中。

    完整代码

    # -*- coding: utf-8 -*-

    #将多个Excel文件合并成一个

    import xlrd

    import xlsxwriter

    #打开一个excel文件

    def open_xls(file):

    fh=xlrd.open_workbook(file)

    return fh

    #获取excel中所有的sheet表

    def getsheet(fh):

    return fh.sheets()

    #获取sheet表的行数

    def getnrows(fh,sheet):

    table=fh.sheets()[sheet]

    return table.nrows

    #读取文件内容并返回行内容

    def getFilect(file,shnum):

    fh=open_xls(file)

    table=fh.sheets()[shnum]

    num=table.nrows

    for row in range(num):

    rdata=table.row_values(row)

    datavalue.append(rdata)

    return datavalue

    #获取sheet表的个数

    def getshnum(fh):

    x=0

    sh=getsheet(fh)

    for sheet in sh:

    x+=1

    return x

    if __name__=='__main__':

    #定义要合并的excel文件列表

    allxls=['F:/test/excel1.xlsx','F:/test/excel2.xlsx']

    #存储所有读取的结果

    datavalue=[]

    for fl in allxls:

    fh=open_xls(fl)

    x=getshnum(fh)

    for shnum in range(x):

    print("正在读取文件:"+str(fl)+"的第"+str(shnum)+"个sheet表的内容...")

    rvalue=getFilect(fl,shnum)

    #定义最终合并后生成的新文件

    endfile='F:/test/excel3.xlsx'

    wb1=xlsxwriter.Workbook(endfile)

    #创建一个sheet工作对象

    ws=wb1.add_worksheet()

    for a in range(len(rvalue)):

    for b in range(len(rvalue[a])):

    c=rvalue[a][b]

    ws.write(a,b,c)

    wb1.close()

    print("文件合并完成")

    源文件excel1:

    201801030938595.png

    201801030938596.png

    源文件excel2:

    201801030938597.png

    201801030938598.png

    201801030939009.png

    运行结果:

    2018010309390010.png

    合并后的excel3:

    2018010309390011.png

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

    本文标题: Python将多个excel文件合并为一个文件

    本文地址: http://www.cppcns.com/jiaoben/python/216560.html

    展开全文
  • Python批量合并多个txt文件

    千次阅读 2020-04-18 09:57:58
    #os模块中包含很操作文件和目录的函数 import os #获取目标文件夹的路径 meragefiledir = os.getcwd()+'\\MerageFiles' #获取当前文件夹中的文件名称列表 filenames=os.listdir(meragefiledir) #打开当前目录...
    # -*- coding:utf-8 -*-  
      
    #os模块中包含很多操作文件和目录的函数  
    import os  
    #获取目标文件夹的路径  
    meragefiledir = os.getcwd()+'\\MerageFiles'
    #获取当前文件夹中的文件名称列表  
    filenames=os.listdir(meragefiledir)  
    #打开当前目录下的result.txt文件,如果没有则创建
    file=open('result.txt','w', encoding='utf8')  
    #向文件中写入字符  
      
    #先遍历文件名  
    for filename in filenames:  
        filepath=meragefiledir+'\\'
        filepath=filepath+filename
        #遍历单个文件,读取行数  
        for line in open(filepath, encoding='utf8'):  
            file.writelines(line)  
        file.write('\n')  
    #关闭文件  
    file.close()  
    

    问题

    1,UnicodeDecodeError: 'gbk' codec can't decode byte 0xac in position 2: illegal multibyte sequence
    windows打开文件默认是以==“gbk“编码的,可能造成不识别unicode==字符,于是做了如下的修改:

    self.file = open('biaobai.json', 'w', encoding="utf-8")
    self.file.write(content)
    

    参考

    1,Python 批量合并多个txt文件https://blog.csdn.net/LINZHENYU1996/article/details/77972762
    2,UnicodeEncodeError: ‘gbk’ codec can’t encode character https://www.cnblogs.com/cwp-bg/p/7835434.html

    展开全文
  • python合并多个csv文件

    千次阅读 2018-07-30 15:36:35
    #导入所需的包 import os import pandas as pd import glob #定义函数hebing def hebing():  csv_list = glob.glob('*.csv') ... print(u'共发现%sCSV文件'% len(csv_list))  print(u'正在处理............')...
    #导入所需的包
    import os
    import pandas as pd
    import glob
    
    #定义函数hebing
    
    def hebing():
        csv_list = glob.glob('*.csv') #查看同文件夹下的csv文件数
        print(u'共发现%s个CSV文件'% len(csv_list))
        print(u'正在处理............')
        for i in csv_list: #循环读取同文件夹下的csv文件
            fr = open(i,'r').read()
            with open('result.csv','a') as f: #将结果保存为result.csv
                f.write(fr)
        print(u'合并完毕!')
    
    #定义函数quchong(file),将重复的内容去掉,主要是去表头
    
    def quchong(file):
        df = pd.read_csv(file,header=0)
        datalist = df.drop_duplicates()
        datalist.to_csv(file)
    
    运行函数
    
    if __name__ == '__main__':
        hebing()
        quchong("result.csv")

     

    以上内容为转载

    博客园原文链接:https://www.cnblogs.com/zhangtianyuan/p/7064054.html

    展开全文
  • 有时候,我们下载了多个PDF文件, 但希望能把它们合并成一个PDF文件。例如:你下载的数个PDF文件资料或者电子发票,你可以使用python程序合并成一个PDF文件,无论是阅读或是打印都更方便些。 2. 分析 首先,我们要...

    1. 多个PDF文件合并

    1.1 需求描述

    有时候,我们下载了多个PDF文件, 但希望能把它们合并成一个PDF文件。例如:你下载的数个PDF文件资料或者电子发票,你可以使用python程序合并成一个PDF文件,无论是阅读或是打印都更方便些。

    1.2. 技术分析

    首先,我们要读取某一个目录(为了简化,我们假设Python代码和PDF文件都放在此目录下)的所有PDF文件,然后调用 PdfFileMerger 库进行合并,最后打印输出文件完成。

    1.3. 代码实现

    • remove_pdf_file(file): 删除一个pdf 文件,主要用来删除合并生成的pdf文件
    • get_all_pdf_files(path): 读取路径path下所有的pdf文件,返回一个列表
    • merge_pdf_file(pdfs): 把在列表pdfs里包含的多个pdf文件合并成一个pdf文件 merged_pdf_file.pdf

    Python 代码

    # merge_pdf_files.py
        
    from PyPDF2 import PdfFileMerger
    import os, sys
        
    def remove_pdf_file(file):
        os.remove(file)
    
    def get_all_pdf_files(path):
        pdfs = [ file for file in os.listdir(path) if '.pdf' in file ]
        return pdfs        
        
    def merge_pdf_file(pdfs):
        pdf_file_merger = PdfFileMerger()
        merged_pdf = 'merged_pdf_file.pdf' 
    
        for pdf in pdfs:
            if merged_pdf == pdf:
                remove_pdf_file(pdf)
            try:
                pdf_file_merger.append(open(pdf, 'rb'))
            except:
                print("merging pdf file %s failed." % pdf)
    
        with open(merged_pdf, 'wb') as fout:
            pdf_file_merger.write(fout)
    
        return merged_pdf
        
    def main():
        pdfs = get_all_pdf_files(sys.path[0])  # current path
    
        print('The file', merge_pdf_file(pdfs), 'is generated.')
        
    if __name__ == "__main__":
        main()
    

    2. 网页上自动下载多个PDF文件并合并PDF文件

    2.1 需求描述

    如果有一个新需求是从某个网页上自动下载多个PDF文件,最后把多个PDF文件合并成一个PDF文件,该如何实现呢?

    2.2 技术分析

    我们使用requests库来抓取网页,使用正则表达式分析网页上的所有PDF文件,然后使用requests库把所有的PDF文件自动下载下来,最后把多个PDF文件合并生成一个文件merged_pdf_file.pdf

    2.3 代码实现

    • get_page_source(url): 读取网页的内容
    • get_all_pdfs_url(html): 分析网页内容找到所有PDF文件的列表
    • download_all_pdf_files(url, pdfs): 从网上下载所有PDF文件到当前目录
    • remove_pdf_file(file): 删除一个pdf 文件,主要用来删除合并生成的pdf文件
    • remove_pdf_file(pdfs): 删除列表里的pdf 文件,主要用来删除临时下载的pdf文件
    • merge_pdf_file(pdfs): 把在列表pdfs里包含的多个pdf文件合并成一个pdf文件merged_pdf_file.pdf

    Python 代码

    # download_merge_pdf_files.py
    
    import re
    import requests
    import sys
    import os
    from PyPDF2 import PdfFileMerger
        
    def get_page_source(url):
        r = requests.get(url)
        return r.text
    
    def get_all_pdfs_url(html):
        all_files = re.findall('<li><a href=(.*?)class="title">', html, re.S)
        
        return [item.strip()[1:-1] for item in all_files if "pdf" in item]
    
    def download_all_pdf_files(url, pdfs):
        print("The following pdf files are downloaded from", url)
        for index, pdf in enumerate(pdfs, 1):
            print("%d. %s" %(index, pdf))
    
            response = requests.get(url + pdf , stream=True)
        
            try:
                new_pdf_file = str(index)+'. '+pdf
                with open(new_pdf_file, 'wb') as handle:
                    for block in response.iter_content(1024):
                        handle.write(block)
            except:
                print("writing pdf file %s failed." % new_pdf_file)
    
    def merge_pdf_files(pdfs):
        pdf_file_merger = PdfFileMerger()
        merged_pdf = 'merged_pdf_file.pdf' 
    
        for index, pdf in enumerate(pdfs, 1):
            if merged_pdf == pdf:
                remove_pdf_file(pdf)
            try:
                new_pdf_file = str(index)+'. '+pdf
                pdf_file_merger.append(open(new_pdf_file, 'rb'))
            except:
                print("merging pdf file %s failed." % new_pdf_file)
    
        with open(merged_pdf, 'wb') as fout:
            pdf_file_merger.write(fout)
    
        return merged_pdf
    
    def remove_pdf_file(file):
        os.remove(file)
    
    def remove_pdf_files(pdfs):
        for file in pdfs:
            remove_pdf_file(file)
    
    def main():
        URL = "http://www.cs.brandeis.edu/~cs134/"
        html = get_page_source(URL)
        pdfs = get_all_pdfs_url(html)
    
        download_all_pdf_files(URL, pdfs)
        print('The file', merge_pdf_files(pdfs), 'is generated.')
        #remove_pdf_files(pdfs)  # if we want to remove those original pdf files
    
    if __name__ == "__main__":
        main()
    
    #The following pdf files are downloaded from http://www.cs.brandeis.edu/~cs134/
    #1. Lecture1-Overview.pdf
    #2. Lecture2-ProbabilityFundementals.pdf
    #3. Lecture3-TextClassification-NB-Part1.pdf
    #4. TextClassification-NB-MaxEnt.pdf
    #5. K_F_Ch3.pdf
    #6. Handout1.pdf
    #7. Quiz1Topics.pdf
    #8. HW1.pdf
    #PdfReadWarning: Xref table not zero-indexed. ID numbers for objects will be corrected. [pdf.py:1736]
    #The file merged_pdf_file.pdf is generated.       
    
    展开全文
  • 文件夹内所有txt文件合并成一txt文件合并后的txt文件按章节对应原来每txt文件,一输入文件是一章,章节名字就是原txt文件文件名。 import os dirPath = "dirpath" #所有txt位于的文件夹路径 files = ...
  • import os import shutil #get names of files in the ...合并时主要用到python的shutil模块的copyfileobj方法,关于该方法的介绍详见官方文档: https://docs.python.org/2/library/shutil.html
  • pyinstaller打包多个python文件

    千次阅读 2020-03-03 00:24:40
    1.制作ico图片,网站: ... 2. 二,pyInstaller安装配置 1,打开网址:pyInstalller下载网址 http://www.pyinstaller.org/downloads.html 看好你的python版本 我的是python 3.64 (查...
  • #ecoding=utf-8 import os ...# 2019/9/8 大的csv文件拆分多个小的csv文件 def mkSubFile(lines, head, srcName, sub): [des_filename, extname] = os.path.splitext(srcName) filename = des_...
  • 范例如下: # coding:utf-8 from pyecharts.charts import Bar, Page from pyecharts import options as opts ... # 安装 python -m pip install pyecharts page = Page(layout=Page.DraggablePageLayout) bar =
  • python将多个文件夹下的文件复制到一个文件夹 但是这种情况只能处理两个层级的文件夹 # coding=utf-8 import os import shutil #目标文件夹,此处为相对路径,也可以改为绝对路径 # determination = 'target/' ...
  • Python -从多个文件夹下读取多个文件

    千次阅读 2019-10-12 16:53:42
    获取多个文件夹的路径 glob包是一个简单的文件匹配包,用来查找符合特定规则的文件路径名,支持使用简单的通配符进行配匹配,包括: * ? [] glob.glob(‘路径’) 获取指定路径下的文件路径名 glob.iglob(‘路径’) ...
  • python解析本地HTML文件

    千次阅读 2020-09-23 14:29:38
    Python使用爬虫技术时,每运行一次,本地都会访问一次主机。为避免完成程序前调试时次访问主机增加...二、在Python中打开本地html文件 打开并读取本地文件可使用BeautifulSoup方法直接打开 soup=BeautifulSoup(ope
  • 将多个csv文件拼接到一起的时候,可以用Python通过pandas包的read_csv和to_csv两个方法来完成。 这里不采用pandas.merge()来进行csv的拼接,而只是通过简单的文件的读取和附加方式的写入来完成拼接。 1 import...
  • # -*- coding: utf-8 -*- """ Created on Mon Mar 2 10:13:57 2020 @author: weisssun """ import os import xlrd import xlsxwriter ...#需合并文件所在的文件夹路径 f_name = os.listdir(...
  • 7z = pd.concat(concat_list,ignore_list=True) 8print(z) 9 10# 或者直接可以写成z = pd.concat([xx,yy],ignore_list=True) 结果如下: 二、多工作簿合并(一) 1、将多个Excel合并到一个Excel中(每个Excel...
  • python学习-生成HTML文件

    千次阅读 2019-02-21 15:12:55
    每日发送服务器利用率信息,需要从falcon的接口查询主机cpu.idle信息并处理,生成HTML文件,通过邮箱发送指定负责人。 二、分享代码如下 1、代码段,请原谅我也是刚接触python,仅仅达到可用的程度 h = html() ...
  • Python使用爬虫技术时,每...一、网页源代码存在本地1、打开需要爬取的网页,鼠标右键查看源代码2、复制源代码,代码保存至本地项目文件目录下,文件后缀改为.html二、在Python中打开本地html文件打开并读取本...
  • Python之生成HTML文件

    万次阅读 多人点赞 2018-10-22 21:02:07
    参考:... ... 在做图像处理时会有结果数据生成,一种好的方法是结果保存为HTML文件,在文件中插入图片的超链接,就可以在网页中同时显示结果和图片。因此,本文对Python生成HTML的方法做一...
  • python 将html文件转化为txt文件

    千次阅读 2020-04-07 18:21:06
    python 将html文件转化为txt文件 ①需求:一千篇乌云知识库的文章,收集下来后是html文件,需要它们都转化为txt文件。由于本人又菜又懒,找了很久代码想要ctrl+c和ctrl+v大佬的,然后收工,然而没有找到好使的...
  • 文章目录数据说明用xlrd和xlwt读写excel使用openpyxl库读写excel最简单的批量合并txt(适用海量数据)win10批量合并办法: 数据说明 这数据是我们组找的19年全国大学生数学建模竞赛C题的数据集,是上海市出租车GPS...
  • 我们可以用Python网页保存为本地的HTML文件,这需要用到urllib库。 比如我们要下载山东大学新闻网的一页面,该网页如下: 实现代码如下 import urllib.request def getHtml(url): html = urllib....
  • Python探讨gdb文件合并方法

    千次阅读 2017-11-20 21:40:21
    近期因要合并全国矢量数据,但由于数据是分幅存储在许多孤立的GDB数据库中的,使用时需要进行合并。因为要在合并的同时保留原始数据的所有属性值,所以用到的比较适合的工具为data management tools 下general → ...
  • Pythontxt文件转换为html

    千次阅读 2020-05-16 23:50:17
    分析txt文件内容,按照限定的规则添加html标签,txt文件转换为html文件
  • 1.两txt文件都是一列数据,现在求这两txt文件的交集、并集和差集。 s1 = set(open('/data/test/id.list', 'r').readlines()) s2 = set(open('/data/test/s.list', 'r').readlines()) ff = open('/data/test/...
  • #我拿来做selenium自动化模拟多个用户使用浏览器的时候,加了这个就启动不了,要去掉 t.start()   import threading 首先导入threading 模块,这是使用多线程的前提。 threads = [] t1 = threading....
  • 从零开始—(用python合并多张excel表内容) 第一步下载python编辑器 下载地址:https://jupyter.readthedocs.io/en/latest/install.html. 打开编辑器 弹出的网页新建python 在之前excel表建好放到一文件夹...
  • 多个py文件生成一个可运行exe文件

    千次阅读 2020-12-11 16:47:00
    目前有一个python脚本,需要在别的电脑中运行,安装python环境太麻烦,封装成exe文件,运行比较方便。 二、演示 环境说明 python版本:3.7.9 操作系统:windows 10 安装模块 pip3 installer pyinstaller 封装 新建...
  • 想要利用Python创建一新的时间维度为小时数的nc文件去整合存储所有单独的文件; 思路如下: S1:生成指定文件夹内nc文件列表filelist; S2:创建新的nc文件ncfile; S3:用循环读取按小时划分的nc文件,并按...
  • 解决 将Python项目打包成EXE可执行文件(单文件多文件,包含图片) 1.当我们写了一个Python的项目时,特别是一GUI项目,我们特备希望它能成为一在Windows系统可执行的EXE文件,那么今天就来讲一下我是如何...
  • 这两天群里有个小伙伴有一个需求, 就是把很多个视频文件 合并成一个. 期间也找了各种软件, 如格式工厂, 但是只能一次合成50个文件, 小伙伴有几千个文件需要合成, 太繁琐; 又比如会声会影, 这个剪辑是很强大, 但是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 298,034
精华内容 119,213
关键字:

python合并多个html文件

python 订阅