已解决ValueError: xpath does not return any nodes. Be sure row level nodes are in xpath. If document us

已解决(pandas.read_xml读取xml报错)ValueError: xpath does not return any nodes. Be sure row level nodes are in xpath. If document uses namespaces denoted with xmlns, be sure to define namespaces and use them in xpath.






文章目录

  • 报错代码
  • 报错翻译
  • 报错原因
  • 解决方法
  • 帮忙解决





报错代码



粉丝群一个小伙伴想用Python读取xml报错,但是还是发生了报错(当时他心里瞬间凉了一大截,跑来找我求助,然后顺利帮助他解决了,顺便记录一下希望可以帮助到更多遇到这个bug不会解决的小伙伴),报错代码如下:

import pandas as pd
import numpy as np

test = """

	
	   2022001
	   10
	   小白
	
	
	   2022002
	   20
	   小红
	
	
	   2022003
	   30
	   小黑
	

"""

# 只读取className
df = pd.read_xml(test, xpath=".//className")
print(df)


报错信息截图如下所示


已解决ValueError: xpath does not return any nodes. Be sure row level nodes are in xpath. If document us_第1张图片




报错翻译



报错信息翻译如下

值错误 :xpath不返回任何节点。确保行级节点位于xpath中。若文档使用用xmlns表示的名称空间,请确保定义名称空间并在xpath中使用它们。




报错原因



报错原因

代码错误,Xpath定位写错了,得定位到已有标签上

解决方法



定位到已有的class标签上:

df = pd.read_xml(test, xpath=".//class")

运行成功:
已解决ValueError: xpath does not return any nodes. Be sure row level nodes are in xpath. If document us_第2张图片

帮忙解决

本文已收录于:《告别Bug》专栏

本专栏用于记录学习和工作中遇到的各种疑难Bug问题,以及粉丝群里小伙伴提出的各种问题,文章形式:报错代码 + 报错翻译 + 报错原因 + 解决方法,包括程序安装、运行程序过程中等等问题,订阅专栏+关注博主后如遇到其他问题可私聊帮忙解决!!!

你可能感兴趣的:(《告别Bug》,python,pandas,开发语言)