Я пытаюсь захватить один файл из tar-архива. У меня есть библиотека файл обработан, и я могу делать вещи, как найти файл в списке с правом пролонгации:Получение одного файла из tar-файла с использованием tarfile lib в python
как их пример:
def xml_member_files(self,members):
for tarinfo in members:
if os.path.splitext(tarinfo.name)[1] == ".xml":
yield tarinfo
member_file = self.xml_member_files(tar)
for m in member_file:
print m.name
Это является большим, и выход:
RS2_C0RS2_OK67683_PK618800_DK549742_SLA23_20151006_234046_HH_SLC/lutBeta.xml
RS2_C0RS2_OK67683_PK618800_DK549742_SLA23_20151006_234046_HH_SLC/lutGamma.xml
RS2_C0RS2_OK67683_PK618800_DK549742_SLA23_20151006_234046_HH_SLC/lutSigma.xml
RS2_C0RS2_OK67683_PK618800_DK549742_SLA23_20151006_234046_HH_SLC/product.xml
Если я говорю, просто ищите product.xml, тогда это не сработает. Поэтому я пробовал:
ti = tar.getmember('product.xml')
print ti.name
и он не нашел product.xml, потому что я догадываюсь о пути информации перед рукой. Я понятия не имею, как получить только эту информацию о пути, чтобы я мог однажды получить файл product.xml, когда-либо извлеченный (кажется, что я все-таки делаю тяжелый путь), но я, как я могу определить только этот путь, чтобы я мог конкатенатировать это для моих других функций файла для чтения и загрузки этого XML-файла после того, как он является единственным файлом, извлеченным из файла tar?
Пожалуйста, ознакомьтесь с мой ответ ниже, и upvote или пометить как принятыми, если это помогло вам в продумывание проблемы. –