我有一个文件夹,里面有很多。焦油.gz文件夹。在python中,我想对每个文件进行解压或压缩,并找到包含要提取的字符串的文本文件?

2024-04-18 04:12:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我有许多主文件夹广州焦油压缩文件。所以我需要解压两次才能得到一个包含文本的数据文件,然后在文本中提取一个特定的字符串。我有麻烦解压缩到文本文件,然后移动到下一个文件,并做同样的事情。将结果保存在数据帧中。你知道吗

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)

Tags: 字符串textin文本import文件夹dffor
1条回答
网友
1楼 · 发布于 2024-04-18 04:12:05

我猜您想找出包含\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)

相关问题 更多 >