由于命名空间的原因,找不到标题元素。在

下面是要查找的示例代码:“文档”标签中的标题

来自内部“组件”标签的标题import xml.etree.ElementTree as ET

import urllib.request

url = 'https://dailymed.nlm.nih.gov/dailymed/services/v2/spls/fe9e8b7d-61ea-409d-84aa-3ebd79a046b5.xml'

response = urllib.request.urlopen(url).read()

tree = ET.fromstring(response)

for docTitle in tree.findall('{urn:hl7-org:v3}title'):

print(docTitle.text)

for compTitle in tree.findall('.//{urn:hl7-org:v3}title'):

print(compTitle.text)

更新

示例:

^{pr2}$

此示例打印ID为829076996的作者名

更新2

您可以使用findall方法轻松处理所有assignedEntity标记。

对于每种方法,您可以有多个产品,因此需要另一个findall方法(参见下面的示例)。在xPathAssignedEntities = ''.join([

".//",

NS, "author/",

NS, "assignedEntity/",

NS, "representedOrganization/",

NS, "assignedEntity/",

NS, "assignedOrganization/",

NS, "assignedEntity"

])

xPathProdCode = ''.join([

NS, "actDefinition/",

NS, "product/",

NS, "manufacturedProduct/",

NS, "manufacturedMaterialKind/",

NS, "code"

])

# GET ALL assignedEntity TAGS

for assignedEntity in tree.findall(xPathAssignedEntities):

# GET ID AND NAME OF assignedEntity

id = assignedEntity.find(NS + 'assignedOrganization/'+ NS + 'id').get('extension')

name = assignedEntity.find(NS + 'assignedOrganization/' + NS + 'name').text

# FOR EACH assignedEntity WE CAN HAVE MULTIPLE TAGS

for performance in assignedEntity.findall(NS + 'performance'):

actCode = performance.find(NS + 'actDefinition/'+ NS + 'code').get('displayName')

prodCode = performance.find(xPathProdCode).get('code')

print(id, '\t', name, '\t', actCode, '\t', prodCode)

结果是:829084545 Pfizer Pharmaceuticals LLC ANALYSIS 0049-0050

829084545 Pfizer Pharmaceuticals LLC ANALYSIS 0049-4900

829084545 Pfizer Pharmaceuticals LLC ANALYSIS 0049-4910

829084545 Pfizer Pharmaceuticals LLC ANALYSIS 0049-4940

829084545 Pfizer Pharmaceuticals LLC ANALYSIS 0049-4960

829084545 Pfizer Pharmaceuticals LLC API MANUFACTURE 0049-0050

829084545 Pfizer Pharmaceuticals LLC API MANUFACTURE 0049-4900

829084545 Pfizer Pharmaceuticals LLC API MANUFACTURE 0049-4910

829084545 Pfizer Pharmaceuticals LLC API MANUFACTURE 0049-4940

829084545 Pfizer Pharmaceuticals LLC API MANUFACTURE 0049-4960

829084545 Pfizer Pharmaceuticals LLC MANUFACTURE 0049-4900

829084545 Pfizer Pharmaceuticals LLC MANUFACTURE 0049-4910

829084545 Pfizer Pharmaceuticals LLC MANUFACTURE 0049-4960

829084545 Pfizer Pharmaceuticals LLC PACK 0049-4900

829084545 Pfizer Pharmaceuticals LLC PACK 0049-4910

829084545 Pfizer Pharmaceuticals LLC PACK 0049-4960

618054084 Pharmacia and Upjohn Company LLC ANALYSIS 0049-0050

618054084 Pharmacia and Upjohn Company LLC ANALYSIS 0049-4940

829084552 Pfizer Pharmaceuticals LLC PACK 0049-4900

829084552 Pfizer Pharmaceuticals LLC PACK 0049-4910

829084552 Pfizer Pharmaceuticals LLC PACK 0049-4960

python 解析url上的xml_如何从python中的URL读取XML文件?相关推荐

  1. python读取xml文件信息_python读取xml文件方法解析

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python来读取xml文件. 什么是xm ...

  2. python读取xml文件内容_python读取xml文件

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python来读取xml文件. 什么是xm ...

  3. python专题-读取xml文件

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是 ...

  4. python读取xml文件

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是 ...

  5. java xml stax_Java StAX解析器示例以读取XML文件

    java xml stax We can use Java StAX parser to read XML file. Java Streaming API for XML (Java StAX) p ...

  6. python 读excel中的sheet_python读取excel文件中所有sheet表格

    sales: store: """ (1)用load_workbook函数打开excel文件,返回一个工作簿对象 (2)用工作簿对象获取所有的sheet (3)第一个fo ...

  7. python读取xml文件信息失败_通过XML读取XML文件时出错。

    我试图用python读取XML文件xml.etree但有时对于某些文件,我在解析文件时会出现内存错误.我的XML文件大小是912Mb,这个问题与文件大小有关吗?在 代码:from xml.etree ...

  8. python用模块读取xml文件_python读取xml文件

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是 ...

  9. 已解决(Python读取xml文件报错)xmL.etree.ELementTree.ParseError:not well-formed (invalid token): Line

    已解决(Python读取xml文件报错)xmL.etree.ELementTree.ParseError:not well-formed (invalid token): Line 文章目录 报错信息 ...

最新文章

  1. freemarker程序开发
  2. php 二维数组值相加,php二维数组指定某元素后面的值是和前面的值相加起来的...
  3. linux proc 占用空间,一种诡异的Linux磁盘空间被占满问题
  4. WinCE中的RAM-Based Registry与HIVE-Based Registry
  5. 让NUnit轻松支持.NET 2.0
  6. 用CSS的float和clear创建三栏液态布局的方法(转载)
  7. 【数据库】第三章 事务、索引和SQL优化
  8. Docker-Compose 基础与实战,看这一篇就够了 | 原力计划
  9. tomcat中开启SSL
  10. javascript实现继承的几种主要方法
  11. 串口转发工具 串口屏调试神器 PC串口监视神器
  12. 阿里云centos7 服务器XorDDoS木马查杀
  13. Ribbon停止维护
  14. 网络应用 1.计算机网络应用体系结构 2.网络应用通信基本原理 3.域名系统(DNS)4.万维网应用 5.Internet电子邮件 6.FTP 7.P2P应用 8.Socket编程基础
  15. 动态密码算法介绍与实现
  16. 分享两篇适合程序员看的书籍——《谁动了我的奶酪》、《你的灯亮着吗?》读后感
  17. 【矩阵论】2. 矩阵分解——SVD
  18. 真爱至上Love Actually
  19. MATLAB远程桌面不可启动——解决方法
  20. Mesos+Marathon搭建部署

热门文章

  1. JZ2440学习总结2
  2. STM32串口中断实验总结函数的初始化必须在变量的初始化之后在进行!
  3. 关于CSS中的相对路径和绝对路径
  4. Servlet中如何获取param-name对应的值?
  5. OpenGL水波纹效果
  6. 「 每日一练,快乐水题 」2006. 差的绝对值为 K 的数对数目
  7. kibana7.x操作
  8. Java Graphics2D类的绘图方法
  9. Android Studio Library 模块中 Native 代码进行 debug 的一些坑
  10. ANDROID L日志系统——JAVAAPI与LIBLOG