http-parser

HTTPリクエスト/レスポンスパーサー
今すぐダウンロード

http-parser ランキングとまとめ

広告

  • Rating:
  • ライセンス:
  • MIT/X Consortium Lic...
  • 出版社名:
  • Benoit Chesneau
  • 出版社のWebサイト:
  • http://code.google.com/u/bchesneau/

http-parser タグ


http-parser 説明

HTTPリクエスト/レスポンスパーサー HTTP-Parserは、Ryan Dahl.installationからのHTTP-Parserに基づく、MITライセンスの下のCのPythonのHTTP要求/応答パーサーです。 http-parser.gitcd http-parser python setup.py inclinfintusage:http-parserは、Pythonプログラムとhttp.httpStreamにアクセスできるC内の低レベルパーサーを入力し、読みやすい順次に高レベルのアクセスを提供するio.rawiobaseオブジェクト。あなたの日常の仕事に役立つ、HTTP-Parserはリーダーモジュール内の3種類の読者を再生します.IterReader、StringReader、StringsReader、StringSioオブジェクト、SpocketReader、SocketReader、SocketReader、SocketReader、SocketReader (recv_intoが必要です)もちろんCNAN CNAN CNを使用してください.Cでは、独自のコールバックをCパーサーに渡すことができますので、最終的には非同期にHTTPストリームを解析できます。コールバックは次のとおりです。on_message_begin()on_path(path)on_query_string(query_string)on_url(URL)on_fragment(fragment)ON_HEADER_FIELD(フィールド)ON_HEADER_VALUE(キー、value)ON_HEADERS_COMPLETE()ON_HEADERS_COMPLETE()ON_BODYS_MESSAGE_COMPLETE()httpStreamexの例:#! http_parser.Readerのインポートhttp_parser.ReaderのインポートSocketReaderDef Main():s = socket.socket(socket.af_inet、socket.sock_stream)try:s.connect(( 'gunicorn.org'、80) )))s.send( "Get / HTTP / 1.1 r nhost:gunicorn.org r n r n")r = socketreader(s)p = httpstream(r)印刷P.Headers()Print P .body_file()。最後にread():s.close()__name__ == "__main__"の場合:httpparserのメイン()例:#!/ usr / bin / env pythonimport socketfrom http_parser.parser httpparserdef main():p = httpparser()s = socket.socket(socket.af_inet、socket.sock_stream)body = [] try:s.connect(( 'gunicorn.org'、80))s.end( "Get / HTTP / 1.1 R nhost:gunicorn.org r n r n ")真:data = s.recv(1024) LEN(データ)nParsed = P.Execute(データ、繰り返し)assert nparsed == p.is_headers_complete():p.is_partial_body():body.append():body.append(p.recv_body())の場合p.is_message_complete():break print "" .join(body)最後に:s.close()__name__ == "__main__"の場合:main()コード内にもっとドキュメントが見つかります(またはDoc Generatoratorを使用)。要件: ・Python ・Cコードを再構築する必要がある場合はCython


http-parser 関連ソフトウェア