-1

こんにちは、http://bobrochel.blogspot.com/2010/11/bad-servers-chunked-encoding-and.htmlで Python コードにパッチを適用しようとしていますが、コードのどこかにこのスニペットを追加すると、常に無効な構文が表示されます. 私は何を間違っていますか?

私のコードの始まりは次のようになります。

import logging
import argparse
import sys
from arbitrer import Arbitrer


def patch_http_response_read(func):
     def inner(*args):
    try:
        return func(*args)
    except httplib.IncompleteRead, e:
        return e.partial

return inner
httplib.HTTPResponse.read = patch_http_response_read(httplib.HTTPResponse.read)


class ArbitrerCLI:
def __init__(self):
4

2 に答える 2

1

exceptもうそのようには機能しません。

except httplib.IncompleteRead as e:
于 2013-08-04T06:22:07.283 に答える
1

正しくインデントします。

Python 3.x では、try ステートメントが変更されました。

import httplib
import logging
import argparse
import sys
from arbitrer import Arbitrer


def patch_http_response_read(func):
    def inner(*args):
        try:
            return func(*args)
        except httplib.IncompleteRead as e:
            return e.partial
    return inner

httplib.HTTPResponse.read = patch_http_response_read(httplib.HTTPResponse.read)


class ArbitrerCLI:
    def __init__(self):
        ...
于 2013-08-04T06:19:09.240 に答える