[英]I want to create a script for unzip (.tar.gz) file via (Python)
[英]I have a folder with many .tar.gz files. In python I want to go into each file unzip or compress and find text file that has string I want to extract?
我的主文件夹包含许多gz.tar压缩文件。 因此,我需要解压缩两次以获取带有文本的数据文件,然后在文本中提取特定的字符串。 我无法解压缩以获取包含文本的文件,然后移至下一个文件并执行相同操作。 将结果保存在数据框中。
import os
import tarfile
for i in os.listdir(r'\user\project gz'):
tar = (i, "r:gz")
for m in tar.getmembers():
f= tar.extractfile(member):
if f is not None:
content = f.read()
text = re.findall(r"\name\s", content)
df = pd.Dataframe(text)
print(df)
我猜您想在\\user\\project gz\\*.tar.gz
找出包含字符串\\name\\s
文件吗?
一个解决方案是
import os
import re
import tarfile
import pandas as pd
row = []
value = []
for filename in os.listdir(r'\\user\\project gz'):
if filename.endswith('.tar.gz'):
tar = tarfile.open(r'\\user\\project gz' + filename)
for text_file in tar.getmembers():
f = tar.extractfile(text_file)
if f is not None:
content = f.read().decode()
if re.findall(r"\\name\\s", content):
row.append(text_file.name)
value.append(content)
tar.close()
df = pd.DataFrame(value, columns=['nametag'], index=row)
print(df)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.