1

Jim McGaw による Beginning Django e-commerce に取り組もうとしています。Chapter-5 の作業中に、google-checkout オプションを導入した後、次のエラーに直面しています。誰か提案/可能な解決策を教えてもらえますか?

コードスニペットは次のとおりです。

$

    def get_checkout_url (リクエスト):
        リダイレクト URL =''
        req = _create_google_checkout_request(リクエスト)
        試す:
            response_xml = urlopen(req).read()
        HTTPError 以外、エラー:
            エラーを上げる
        URLError 以外、エラー:
            エラーを上げる
        そうしないと:
            redirect_url = _parse_google_checkout_response(response_xml)
        redirect_url を返す


    $ def _parse_google_checkout_response(response_xml):
        redirect_url = ""
        response_xml を出力
        xml_doc = minidom.parseString(response_xml) # -- ここで壊れます --
    # xml_doc = minidom.parse(response_xml)
        ルート = xml_doc.documentElement
        ノード = root.childNodes[1]
        node.tagName == 'リダイレクト URL' の場合:
            redirect_url = node.firstChild.data
        if node.tagName == 'エラーメッセージ':
            RuntimeError(node.firstChild.data) を発生させます
        redirect_url を返す

エラーログは次のとおりです。

**環境:**

ジャンゴのバージョン: 1.4.1
Python バージョン: 2.7.1


トレースバック:
get_response のファイル「/Users/username/work/pythonwork/djtrunk/django/core/handlers/base.py」
  111. 応答 = コールバック(要求、*callback_args、**callback_kwargs)
show_cart のファイル「/Users/username/work/pythonwork/ecomstore/cart/views.py」
  19. checkout_url = checkout.get_checkout_url(リクエスト)
get_checkout_url のファイル「/Users/username/work/pythonwork/ecomstore/checkout/checkout.py」
  6. google_checkout.get_checkout_url(リクエスト) を返す
get_checkout_url のファイル「/Users/username/work/pythonwork/ecomstore/checkout/google_checkout.py」
  27. redirect_url = _parse_google_checkout_response(response_xml)
_parse_google_checkout_response のファイル「/Users/username/work/pythonwork/ecomstore/checkout/google_checkout.py」
  46. xml_doc = minidom.parseString(response_xml)
parseString のファイル「/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/dom/minidom.py」
  1924. return expatbuilder.parseString(string)
parseString のファイル「/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/dom/expatbuilder.py」
  940. return builder.parseString(string)
parseString のファイル「/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/dom/expatbuilder.py」
  223. parser.Parse(文字列, True)

例外タイプ: ExpatError at /cart/
例外値: タグの不一致: 行 1460、列 4

4

0 に答える 0