下面是JSON文件的内容,我怎么才能得到第二级的密钥,这意味着我应该能够存储像uid,passid,signbuttonid,logoIcon,cornerSettingMenu,logoutButtonId,overlayId,loaderInFunctionalPanel这样的密钥。我应该能够使用python存储在列表或某个数组中。意味着我需要像
list[0]= uid
list[1]=passid
list[2]= signbuttonid
list[3]=logoIcon and so on . . . . . .
{ “GlobalElements”: [ { “UID”: “USEREMAIL” “passid”: “userPwd” “signbuttonid”:“//按钮[@ class ='btn btn-mammoth']”, “logoIcon”:“// a [@ class ='logo text-hide']”, “cornerSettingMenu”: “// DIV [@类= '下拉肘节'] / P”, “logoutButtonId”: “//一个[@类= '注销']”, “overlayId”: “// DIV [@类= '覆盖']”, “loaderInFunctionalPanel”:“// DIV [@类= '小直列装载机'] /子:: I [@类='发 fa-spinner fa-pulse']“ } ]
注意:我不需要那些值。我只需要钥匙。
任何人都可以帮我这个。提前致谢。
答案 0 :(得分:1)
如果
import json
a={ "GlobalElements" :[ { "uid":"userEmail", "passid":"userPwd", "signbuttonid": "//button[@class='btn btn-mammoth']", "logoIcon":"//a[@class='logo text-hide']", "cornerSettingMenu":"//div[@class='dropdown-toggle']/p", "logoutButtonId":"//a[@class='logout']", "overlayId":"//div[@class='overlay']", "loaderInFunctionalPanel":"//div[@class='small-inline-loader']/child::i[@class='fa fa-spinner fa-pulse']" } ]}
a= json.dumps(a) #serialize dictionary to json
b=json.loads(a) #unserialize json to get dictionary
获取密钥列表:
l= b["GlobalElements"][0].keys()
print l
[u' uid',u' logoutButtonId',u' logoIcon',u' signbuttonid',u' passid',u& #39; overlayId',u' loaderInFunctionalPanel',u' cornerSettingMenu']
答案 1 :(得分:0)
Building in workspace /Users/Shared/Jenkins/Home/workspace/Test
Parsing POMs
Established TCP socket on 52863
[TestForm] $ /Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home/bin/java –Xmx512m –XX:MaxPermSize=128m -cp /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven35-agent-1.12-alpha-1.jar:/Users/Shared/Jenkins/Home/tools/hudson.tasks.Maven_MavenInstallation/MavenTest/boot/plexus-classworlds-2.5.2.jar:/Users/Shared/Jenkins/Home/tools/hudson.tasks.Maven_MavenInstallation/MavenTest/conf/logging jenkins.maven3.agent.Maven35Main /Users/Shared/Jenkins/Home/tools/hudson.tasks.Maven_MavenInstallation/MavenTest /Users/Shared/Jenkins/Home/war/WEB-INF/lib/remoting-3.14.jar /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven35-interceptor-1.12-alpha-1.jar /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.12-alpha-1.jar 52863
Error: Could not find or load main class –Xmx512m
ERROR: Failed to parse POMs
java.nio.file.NoSuchFileException: /Users/Shared/Jenkins/Home/workspace/Test/Users/xyz/eclipse-workspace/TestForm/pom.xml
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)
at java.nio.file.Files.newByteChannel(Files.java:361)
at java.nio.file.Files.newByteChannel(Files.java:407)
at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:384)
at java.nio.file.Files.newInputStream(Files.java:152)
at hudson.FilePath.read(FilePath.java:1770)
at jenkins.plugins.maveninfo.extractor.properties.PomPropertiesFinder.findProperties(PomPropertiesFinder.java:50)
at jenkins.plugins.maveninfo.extractor.MavenInfoExtractor.extract(MavenInfoExtractor.java:58)
at jenkins.plugins.maveninfo.extractor.MavenInfoEnvironment.tearDown(MavenInfoEnvironment.java:42)
at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:908)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:504)
at hudson.model.Run.execute(Run.java:1724)
at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:543)
at hudson.model.ResourceController.execute(ResourceController.java:97)
at hudson.model.Executor.run(Executor.java:421)
TestNG Reports Processing: START
Looking for TestNG results report in workspace using pattern: /Users/xyz/eclipse-workspace/TestForm/test-output/testng-results.xml
Did not find any matching files.
Finished: FAILURE
谢谢。
答案 2 :(得分:0)
首先你需要导入json 将您的json内容存储在变量中。如果它在文件中,请读取文件并将其存储在变量中。 使用dumps()和loads()方法来序列化和反序列化,并将值取为如下代码
import json
x={ "GlobalElements" :[ { "uid":"userEmail", "passid":"userPwd", "signbuttonid": "//button[@class='some id']", "logoIcon":"//a[@class='some id']", "cornerSettingMenu":"//div[@class='dropdown-toggle']/p", "logoutButtonId":"//a[@class='logout']", "overlayId":"//div[@class='overlay']", "loaderInFunctionalPanel":"//div[@class='small-inline-loader']/child::i[@class='fa fa-spinner fa-pulse']" } ] }
x= json.dumps(x)
y=json.loads(y)
z= b["GlobalElements"][0].keys()
此处z
将保留第二级的第一个值。