Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python plistlib发行版iTunes plist_Python - Fatal编程技术网

Python plistlib发行版iTunes plist

Python plistlib发行版iTunes plist,python,Python,plistlib读取的Plist文件必须准确无误,我的问题是iTunes创建了我想用python读取的Plist,但从来没有完整的Plist。 例如: 顺便说一下,我的python脚本将打印出版本号 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"&

plistlib读取的Plist文件必须准确无误,我的问题是iTunes创建了我想用python读取的Plist,但从来没有完整的Plist。 例如:

顺便说一下,我的python脚本将打印出版本号

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Build Version</key>
    <string>XXXXXX</string>
    <key>Device Name</key>
    <string>Owner's iPad</string>
    <key>Display Name</key>
    <string>Owner's iPad</string>
    <key>GUID</key>
    <string>---</string>
    <key>Last Backup Date</key>
    <date/>                            <---Issue
    <key>Product Type</key>
    <string>iPad2,5</string>
    <key>Product Version</key>
    <string>9.3.1</string>
    <key>Serial Number</key>
    <string>XXXXXXXXX</string>
    <key>Target Type</key>
    <string>Device</string>
    <key>iBooks Data 2</key>
    <data>
    ERORJEIJREWREWRJEWITIJTREKTJKREJTKRETLKRENJLKGTJNREKLGTRELKGRGRG
    RGRDFGFDGRKGIRHJGHRTEGERTJGERFGRGFRGRGRGRTEGRFGFGFGFGFDGFDGFDGFG
    FGFDGFDGFDGIJDHFGUOIHERUOGERHGERHHREIHGIJURHIGJHDFIJGHDIJFHGIFHG
    GFDGOPJDFOPIGJFIDGOIFDJGKJFDGKOFDJGFDJKOGJDFGJDFKGJFDKGJKFFJGJGG
    GFRGREJGOPERJGKJREKGJKLRJGFJGKLFJDLKGJFKLGJKJFGKLJFDGLRNGFIOERHK
    ODFGKODFKGOPFDKJGPDJFPKGJDFPKGJFDKJGKDFJGKJDFKJGKJFKGDFGKFJDGGGJ
    </data>
    <key>iTunes Files</key>
    <dict>
        <key>IC-Info.sidv</key>
        <data>
        FREJEIOTJRIEJTKIREJTJREJGKLRJFRGDLKGDJLKHGHFLKJDHGJLKFHGJKFHJGHFDJG
        FGFDGFDGFDGIJDHFGUOIHERUOGERHGERHHREIHGIJURHIGJHDFIJGHDIJFHGIFHGDGF
        GFGFDPIGJDFIOPGJROKGJKREJGREKLGJNELKRGJDFKJNGLKDFNGKJLNFDLKGNFDLKGN
        GFDGOPJDFOPIGJFIDGOIFDJGKJFDGKOFDJGFDJKOGJDFGJDFKGJFDKGJKFFJGJGGGFF
        GFGFDPIGJDFIOPGJROKGJKREJGREKLGJNELKRGJDFKJNGLKDFNGKJLNFDLKGNFDLKGN
        FGFDGFDGFDGIJDHFGUOIHERUOGERHGERHHREIHGIJURHIGJHDFIJGHDIJFHGIFHGGGG
        FGGFGFDGDFRGFDGFDIOHGIOFDHGDFIOGOIUFDGDFGJHFJUGHFHGJFDHGFHGHFGFHGFJ
        </data>
    </dict>
    <key>iTunes Settings</key>
    <dict>
    </dict>
    <key>iTunes Version</key>
    <string>10.0.1</string>
</dict>
</plist>
import os
import plistlib

def main():

   fileName=os.path.expanduser('example.plist')

   if os.path.exists(fileName):

      pl=plistlib.readPlist(fileName)

      if 'Product Version' in pl:
         print( 'The aString value is %s\n' % pl['Product Version'])

      else:
         print( 'There is no Product Version in the plist\n')

   else:
      print( '%s does not exist, so can\'t be read' % fileName)

if __name__ == '__main__':
   main()