Python ImportError:没有名为dom的模块

Python ImportError:没有名为dom的模块,python,xml,Python,Xml,我正在使用python 2.7.8。我做了很多搜索,但没有解决这个问题。我遇到以下类型的包链接: 但是也失败了,我试图通过上面的链接实现2.7.8而不是2.6 我使用的代码来自: 基本上,我正在尝试导出xml,下面是代码: from xml.dom import minidom import urllib url_str = 'http://www.newyorkfed.org/markets/omo/dmm/fftoXML.cfm?type=daily' xml_str = urllib.

我正在使用python 2.7.8。我做了很多搜索,但没有解决这个问题。我遇到以下类型的包链接:

但是也失败了,我试图通过上面的链接实现2.7.8而不是2.6

我使用的代码来自:

基本上,我正在尝试导出xml,下面是代码:

from xml.dom import minidom
import urllib

url_str = 'http://www.newyorkfed.org/markets/omo/dmm/fftoXML.cfm?type=daily'
xml_str = urllib.urlopen(xml_str).read()
xmldoc = minidom.parseString(xml_str)

obs_values = xmldoc.getElementsByTagName('base:OBS_VALUE')
# prints the first base:OBS_VALUE it finds
print obs_values[0].firstChild.nodeValue

# prints the second base:OBS_VALUE it finds
print obs_values[1].firstChild.nodeValue

# prints all base:OBS_VALUE in the XML doc
for obs_val in obs_values:
    print obs_val.firstChild.nodeValue
错误:

Traceback (most recent call last):
  File "C:\Users\DELL\Desktop\python\s\fyp\xml.py", line 1, in <module>
    from xml.dom import minidom
  File "C:\Users\DELL\Desktop\python\s\fyp\xml.py", line 1, in <module>
    from xml.dom import minidom
ImportError: No module named dom
您将模块命名为xml.py。不要这样做,这是在屏蔽内置包。Python正在查找脚本,而不是内置的xml包。您的xml脚本没有dom子包,因此导入失败

您可以在回溯中看到这一点:

Traceback (most recent call last):
  File "C:\Users\DELL\Desktop\python\s\fyp\xml.py", line 1, in <module>
    from xml.dom import minidom
  File "C:\Users\DELL\Desktop\python\s\fyp\xml.py", line 1, in <module>
    from xml.dom import minidom
ImportError: No module named dom
这可能应该改为使用url\u str。

您将模块命名为xml.py。不要这样做,这是在屏蔽内置包。Python正在查找脚本,而不是内置的xml包。您的xml脚本没有dom子包,因此导入失败

您可以在回溯中看到这一点:

Traceback (most recent call last):
  File "C:\Users\DELL\Desktop\python\s\fyp\xml.py", line 1, in <module>
    from xml.dom import minidom
  File "C:\Users\DELL\Desktop\python\s\fyp\xml.py", line 1, in <module>
    from xml.dom import minidom
ImportError: No module named dom
这可能应该改为使用url\u str。

像这样检查

import xml
print(xml.__file__)
然后检查它是否从您期望的python模块中挑选

还要检查您正在使用的相应文件夹中是否有任何其他xml.py。如果有,请重命名它

也要改变这一点

xml_str = urllib.urlopen(url_str).read()
像这样检查

import xml
print(xml.__file__)
然后检查它是否从您期望的python模块中挑选

还要检查您正在使用的相应文件夹中是否有任何其他xml.py。如果有,请重命名它

也要改变这一点

xml_str = urllib.urlopen(url_str).read()
你应该能够

from xml.dom import minidom
但是,出于同样的原因,您不能调用自己的文件xml.py。不要将其称为random.py math.py等。您应该能够

from xml.dom import minidom

但是,由于同样的原因,您不能调用自己的文件xml.py。请不要将其称为random.py math.py等。这是PyCharm 2020.1中的最新版本。该问题已在中报告https://youtrack.jetbrains.com/issue/PY-41791

在问题得到解决之前,已提出以下解决方法:

替换中的xml目录 \插件\python ce\helpers\typeshed\stdlib\2和3 使用来自的xml


执行此操作后,转到PyCharm和Code->Code Cleanup。清理完成后,重新启动PyCharm以使新设置生效。

这是PyCharm 2020.1中的最新问题。该问题已在中报告https://youtrack.jetbrains.com/issue/PY-41791

在问题得到解决之前,已提出以下解决方法:

替换中的xml目录 \插件\python ce\helpers\typeshed\stdlib\2和3 使用来自的xml



执行此操作后,转到PyCharm和Code->Code Cleanup。清理完成后,重新启动PyCharm以使新设置生效。

您可以导入导入xml吗?如果我写入导入xml,则会出现错误:NameError:name'xml\u str'未定义文件位于C:\Users\DELL\Desktop\python\s\fyp\xml.py的位置是什么?它看起来像是它的阴影stdlib module.xml.py是我的文件名它在桌面上的单独文件夹中你能导入导入xml吗?如果我写入导入xml,它会给我错误:name错误:名称“xml\u str”未定义文件位于C:\Users\DELL\Desktop\python\s\fyp\xml.py的位置是什么?它看起来像是阴影stdlib module.xml.py是我的文件名它在桌面上的单独文件夹中你是说?导入xml导入urllib url_str=xml_str=urllib.urlopenxml_str.read xmldoc=minidom.parseStringxml_str obs_values=xmldoc.getElementsByTagName'base:obs_VALUE'打印找到的第一个基:obs_值打印xml.obs_值[0]。firstChild.nodeValue打印找到的第二个基:obs_值打印xml.obs_值[1].firstChild.nodeValue打印XML文档中的所有base:OBS_值,用于OBS_val中的OBS_值:print XML.OBS_val.firstChild.nodeValue仅用于检查,现在已清除。请将XML.py重命名为myxml.py。重命名文件并继续,而不编辑程序。如从XML.dom导入minidomi重命名,但仍然相同?没有模块?尝试删除python27文件夹中的xml.pyc,其中有xmlbuilder.pyc、xmldocs.pyc、xmlrpclib.pyc。。。在我的destop文件夹中没有这样的文件,你是说?导入xml导入urllib url_str=xml_str=urllib.urlopenxml_str.read xmldoc=minidom.parseStringxml_str obs_values=xmldoc.getElementsByTagName'base:obs_VALUE'打印找到的第一个基:obs_值打印xml.obs_值[0]。firstChild.nodeValue打印找到的第二个基:obs_值打印xml.obs_值[1].firstChild.nodeValue打印XML文档中的所有base:OBS_值,用于OBS_val中的OBS_值:print XML.OBS_val.firstChild.nodeValue仅用于检查,现在已清除。请将XML.py重命名为myxml.py。重命名文件并继续,而不编辑程序。如从XML.dom导入minidomi重命名,但仍然相同?没有模块?尝试删除python27文件夹中的xml.pyc,其中有xmlbuilder.pyc、xmldocs.pyc、xmlrpclib.pyc。。。在我的destop文件夹中没有这样的文件,我现在把我的文件名改成了p.py,并且做了像你说的那样的更改:url\u str=xml\u str=urllib.urlopenurl\u str.read xmldoc=
minidom.parseStringxml_str但仍然是相同的结果…@dellpk:现在这里的结果是什么?另一个错误?@dellpk:还有xml.pyc文件吗?如果是这样,也将其删除。在python27文件夹中有xmlbuilder.pyc、xmldocs.pyc、xmlrpclib.pyc。。。在我的destop文件夹中没有这样的file@dellpk:仔细查看生成的回溯。如果其中仍然显示C:\Users\DELL\Desktop\python\s\fyp\xml.py或C:\Users\DELL\Desktop\python\s\fyp\xml.pyc,则您知道从何处清理此文件。我现在已将文件名更改为p.py,并进行了类似于您所说的更改:url\u str=xml\u str=urllib.urlopenurl\u str.read xmldoc=minidom.parsexml stringstr\u str但结果仍然相同..@dellpk:现在的结果是什么?另一个错误?@dellpk:还有xml.pyc文件吗?如果是这样,也将其删除。在python27文件夹中有xmlbuilder.pyc、xmldocs.pyc、xmlrpclib.pyc。。。在我的destop文件夹中没有这样的file@dellpk:仔细查看生成的回溯。如果其中仍然显示C:\Users\DELL\Desktop\python\s\fyp\xml.py或C:\Users\DELL\Desktop\python\s\fyp\xml.pyc,则您知道在何处可以清理此问题。