python获取指定标签中的内容

我想使用python将下面内容多个<string></string>之间的内容答应出来,应该如何编写脚本,顺便能给下讲解步骤和用到的python库或函数,谢谢<dict>... 我想使用python 将下面内容多个<string></string>之间的内容答应出来,应该如何编写脚本,顺便能给下讲解步骤和用到的python库或函数,谢谢
<dict>
<key>LogType</key>
<string>Default</string>
<key>Message</key>
<string>测试场景:订餐提交页面</string>
<string>Loop in : 2 durTime:0.266s</string>
<key>Timestamp</key>
<date>2014-06-06T12:16:24Z</date>
<key>Type</key>
<integer>1</integer>
</dict>
我希望得到的结果是:
测试场景:订餐提交页面
Loop in : 2 durTime:0.266s

另外说明:<string>Default</string>是不需要显示出来的,还有我的文件中包含多个“测试场景:订餐提交页面”重复的只在其第一次显示的时候打印出来就行,本人小白希望python大师能在脚本中加入清晰的注释说明,便于我学习,谢谢
展开
 我来答
yycgis
推荐于2016-05-18 · TA获得超过8267个赞
知道大有可为答主
回答量:6831
采纳率:63%
帮助的人:1594万
展开全部

你好:

请看下面代码:

# -*- coding: utf-8 -*-
from bs4 import BeautifulSoup

html='''<dict>
        <key>LogType</key>
        <string>Default</string>
        <key>Message</key>
        <string>测试场景:订餐提交页面</string>
        <string>Loop in : 2 durTime:0.266s</string>
        <key>Timestamp</key>
        <date>2014-06-06T12:16:24Z</date>
        <key>Type</key>
        <integer>1</integer>
</dict>'''

soup= BeautifulSoup(html)
trs=soup.findAll("string")
length=len(trs)
arr=[]
for i in range(length):
    print trs[i].contents

需要安装BeautifulSoup,代码很容易懂的!

追问
你好,我这个文件不是一个html文件,他是一个pilist文件,我用的方法是读出想要的内容但是都是unicode编码,我的脚本开头也有“#coding:utf-8”,请问如何处理呀?
追答
ok!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式