私は Twisted をいじって、それが何であるかを見ようとしていました。そこで、Jessica McKellar と Abe Fettig による本「Twisted」第 2 版を購入し、Python、Twisted、および zope.interface をダウンロードしてインストールし、12 ページから最初の例を入力して実行しようとしました。
from twisted.internet import reactor, protocol
class EchoClient(protocol.Protocol):
def connectionMade(self):
self.transport.write("Hello, Stupid!")
def dataReceived(self, data):
print "Server said: ", data
self.transport.loseConnection()
class EchoFactory(protocol.ClientFactory):
def BuildProtocol(self, addr):
return EchoClient()
def clientConnectionFailed(self, connector, reason):
print "Connection Failed."
reactor.stop()
def clientConnectionLost(self, connector, reason):
print "Connection lost."
reactor.stop()
reactor.connectTCP("localhost", 8000, EchoFactory())
reactor.run()
サーバー部分もありました。サーバー プログラムを実行し、別の cmdline ウィンドウでクライアント プログラムを実行しました (上記)。次の結果が得られました。
"Unhandled Error
Traceback.. (several lines - see attached screen-capture (oops - this won't let me attach images!)
ファイル "C:\Python27\lib\site-package\twisted\python\context.py"、81 行目、callWithContext --- --- ファイル "C:\Python27\lib\site-packages\twisted\internet\ selectreactor.py"、151 行目、_doReadOrWrite why = getattr(selectable, method)() ファイル "C:\Python27\lib\site-packages\twisted\internet\tcp.py"、593 行目、doConnect self._connectDone 内() .. exceptions.TypeError: 'NoneType' オブジェクトは呼び出し可能ではありません。接続に失敗しました。
私がPythonの専門家であれば、問題はより明確になる可能性がありますが、私はC#、F#、C ++のバックグラウンドを持っているため、かなり慣れていません。
何が原因だと思いますか? 他の誰かがこの問題に遭遇しましたか? いらいらします - 最初のまったく些細な例を実行することさえできなければ、これは簡単なテクノロジとは言えません!
Windows 8 x64、Python 2.7.5、Twisted 13.0.0 (インストーラーは Twisted-13.0.0.win-amd64-py2.7.msi) を使用しており、python (C:\Python27) を追加しました。 ) およびスクリプトを PATH 環境変数に追加します。