zipfile.zipfile文件只提取一个折叠

2024-05-09 11:03:10 发布

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

我有这个密码

def downloadupdate():
    url = 'http://myurl.com/o/test/list.zip'
    destination = xbmc.translatePath('special://home/userdata/addon_data/iupdatefix/Super.zip')
    urllib.urlretrieve(url,destination)
    time.sleep(40)

    updatezip = xbmc.translatePath('special://home/userdata/addon_data/iupdatefix/Super.zip')
    extractupdate = xbmc.translatePath('special://home/userdata/addon_data/plugin.program.test/')
    oldfav = xbmc.translatePath('special://home/userdata/addon_data/plugin.program.test/test')
    yeszip = os.path.exists(updatezip)
    shutil.rmtree(oldfav, ignore_errors=False)
    time.sleep(10)
    if yeszip:
        gh = open(updatezip, 'rb')
        zp = zipfile.ZipFile(gh)
        for name in zp.namelist():
            zp.extract(name, extractupdate)
            gh.close()
            time.sleep(3)
    else:
        xbmc.executebuiltin("Notification(some text, sometext,()")

downloadupdate()

zip文件下载正确 zip文件保存在正确的位置 正确删除 内部超级压缩有12个目录,如果这12个目录是测试.txt文件 当我提取超级压缩它只提取12个目录中的一个,并且提取的目录是空的。是不是我需要某种方式停止或者关闭shutil进程?在提取的同时,它也被舒蒂尔抹去了? 有谁能解释一下我的过错吗。谢谢


Tags: addontest目录homedatatimesleepzip
1条回答
网友
1楼 · 发布于 2024-05-09 11:03:10

好了,现在可以用了谢谢你大卫一个女孩

def downloadupdate():
    url = 'http://myurl.com/o/test/list.zip'
    destination = xbmc.translatePath('special://home/userdata/addon_data/iupdatefix/Super.zip')
    urllib.urlretrieve(url,destination)
    time.sleep(40)

    updatezip = xbmc.translatePath('special://home/userdata/addon_data/iupdatefix/Super.zip')
    extractupdate = xbmc.translatePath('special://home/userdata/addon_data/plugin.program.test/')
    oldfav = xbmc.translatePath('special://home/userdata/addon_data/plugin.program.test/test')
    yeszip = os.path.exists(updatezip)
    shutil.rmtree(oldfav, ignore_errors=False)
    time.sleep(10)
    if yeszip:
        gh = open(updatezip, 'rb')
        zp = zipfile.ZipFile(gh)
        zp.extractall(extractupdate)
        gh.close()
        time.sleep(3)
    else:
        xbmc.executebuiltin("Notification(some text, sometext,()")

downloadupdate()

相关问题 更多 >