用python将txt文件拆分成多个小文件

本文介绍了一种使用Python将大型txt文件拆分成多个小文件的方法,每个小文件根据URL的域名进行区分。通过读取文件,以逗号为分隔符拆分URL,然后利用域名创建小文件名。最初的方法虽然可行,但需要大量手工操作。改进后的方案利用了Python的split函数和循环,通过比较URL的主域名来确定文件范围,并利用正则表达式提高处理效率。最终,每个URL被写入相应的文件,并添加换行符以增强可读性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

txt文件本身为由逗号区分开的连续字符串,字符串均为链接,因此一般特征也比较明显,文件如下:
在这里插入图片描述
首先想到方法是用with open read函数获取文件信息,通过’,‘来拆分各个url,按照url域名来得到小文件名,从而完成文件拆分,但此时得到的小文件可读性很差,经过查询得知,可将此时各url较共同的后缀替换为原字符+’<br>’,并另存为htm文件,浏览器打开另存文件,即可得到每个url一行的呈现。基本预期达到,但是方法原始,手工操作很多。
后来经过查询试验,调整为一下思路:
利用with open read函数获取文件信息,此时指定编码为utf-8,利用split函数分解连续字符串,以每个逗号为标志拆分后传到到列表中,
利用循环按照每个链接字符串中‘//..**/‘主要域名部分来区分不同小文件范围,并将域名作为小文件名称,此时循环界定文件内容范围方式采用某域名
与其后域名是否一致来判断是否同属一个文件,每个循环结束令写入文件的列表置空,重新传入文件内容。
1.源文件编码格式不为utf-8,重新修改另存尝试无果,遂在with open和write时引用encoding参数指定传来编码为utf-8
2.正则表达式匹配字符’//‘与’/‘时可以直接匹配,上述两种字符并不是需要转义的字符,其次findall基于贪婪匹配,返回字符串包括太多不合适字符,用’.+

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值