I'm trying to get my game to run. the code requires xml.sax. I import it with py2exe and it still doesn't want to work. I've tried for days and days and I cannot get it to work. Before I compile it to a .exe it works but whenever I compile it to a exe it doesn't work.

我想让我的游戏运行起来。代码需要xml.sax。我用py2exe导入它仍然不想工作。我已经尝试了几天和几天,我无法让它工作。在我将它编译为.exe之前,它可以工作,但每当我将它编译为exe时,它都不起作用。

Running:

[-] Python 2.7.9 32-bit

[ - ] Python 2.7.9 32位

[-] py2exe 0.6.9 32-bit

[ - ] py2exe 0.6.9 32位

The error is: SAXReaderNotAvailable: No parsers found

错误是:SAXReaderNotAvailable:找不到解析器

Here is my game code:

这是我的游戏代码:

import xml.sax

class DNAError(Exception): pass
class DNAParseError(DNAError): pass

elementRegistry = {}
def registerElement(element):
  elementRegistry[element.TAG] = element

class DNASaxHandler(xml.sax.ContentHandler):
def __init__(self):
    xml.sax.ContentHandler.__init__(self)

    self.stack = []
    self.root = None

def startElement(self, tag, attrs):
    if self.stack:
        parent = self.stack[-1]
        parentTag = parent.TAG
    else:
        parent = None
        parentTag = None

    element = elementRegistry.get(tag)
    if not element:
        raise DNAParseError('Unknown element type: ' + tag)

    if parentTag not in element.PARENTS:
        raise DNAParseError('Cannot put %s below %s element' % (tag, parentTag))

    element = element(**attrs)
    self.stack.append(element)
    element.reparentTo(parent)

    if not self.root:
        self.root = element

def endElement(self, tag):
    self.stack.pop(-1)

def characters(self, chars):
    if not self.stack:
        return

    self.stack[-1].handleText(chars)

def parse(stream):
handler = DNASaxHandler()
xml.sax.parse(stream, handler)
return handler.root

Here is my compile script for py2exe:

这是py2exe的编译脚本:

from distutils.core import setup
import py2exe

setup(
options={"py2exe": {"includes": [ "xml.sax.drivers.*", "xml.sax.drivers2.*", "xml.sax" ] }},
zipfile = None,
windows = ['relived.py']
)

1 个解决方案

#1


0

Try adding this to your setup.py py2exe command line:

尝试将此添加到您的setup.py py2exe命令行:

--packages xml.sax.drivers,xml.sax.drivers2

from this

更多相关文章

  1. Python的范围函数如何工作?
  2. Java程序不像python程序那样工作,我不知道为什么
  3. 为什么分配给True / False不能像我期望的那样工作?
  4. Python pyexcelerate库将多个工作表写入同一个工作簿?
  5. 用python阐释工作量证明(proof of work)
  6. gsutil - 正则表达式与替代不工作
  7. DDNS 的工作原理及其在 Linux 上的实现--转
  8. 搭建一个属于自己的Mainframe 之 准备工作
  9. 我应该在哪里添加Yocto位烤任务来创建工作文件夹符号链接?

随机推荐

  1. Android中ProgressDialog的简单示例
  2. Android的简易弹幕
  3. AES加密进行Android的SharedPreferences
  4. android project 文件夹
  5. android -- 多级目录创建
  6. Android(安卓)按键消息path
  7. 使用Android系统自带的icon图标
  8. android [1_ManagingProjects]
  9. Android requires compiler compliance l
  10. 快手Android