http-parser.

analisador de solicitação / resposta HTTP
Baixe Agora

http-parser. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • MIT/X Consortium Lic...
  • Nome do editor:
  • Benoit Chesneau
  • Site do editor:
  • http://code.google.com/u/bchesneau/

http-parser. Tag


http-parser. Descrição

Pedido HTTP / Parser de Response HTTP-Parser é um analisador de solicitação / resposta HTTP para o Python em C em C Licença de MIT, com base no HTTP-Parser da Ryan Dahl.installation: PIP Instalar o HTTP-Parseror Install a partir de Fonte: Git Clone Git: //github.com/benoitc/ http-parser.gitcd http-parser python setup.py installusage: http-parser fornecer-lhe parser.httpparser parser de baixo nível em C que você pode acessar em seu programa Python e http.httpstream, fornecendo acesso de nível mais alto a um seqüencial legível objeto io.rawiobase.Para ajudá-lo no seu trabalho de dia, http-parser prescide você 3 tipos de leitores no módulo do leitor: iterreader para ler iterables, StringReader para ler strings e objetos string, socketreader para ler soquetes ou objetos com o mesmo (Recv_into necessário). Você cnan, claro, usa qualquer objeto IO.rawiobase.Likre HTTP-Parser em C Você pode passar suas próprias cadastradas para o analisador C, para que você possa pará-lo de forma assíncrona. Callbacks são: ON_MESSAGE_BEGIN () ON_QUERY_STRING (Query_String) on_url (URL) on_cragment (fragmento) on_header_field (campo, last_was_value) on_header_value (chave, valor) on_headers_complete () on_body (chunk) on_message_complete () Exemplo de httptreamex: #! / usr / bin / bin / env pythonimport socketfrom http_parser.http import importar httpstreamfrom http_parser.reader importar socketreaddef main (): s = soquete.socket (socket.af_inet, socket.sock_stream) tente: s.connect (('guniclorn.org', 80 )) s.send ("get / http / 1.1 \ r \ nhost: gunicorn.org \ r \ n \ r \ n") r = socketreader (s) p = httpstream (r) imprimir p.headers () imprimir p .body_file (). Leia () Finalmente: S.Close () se __Name__ == "__main__": principal () Exemplo de httpparser: #! / usr / bin / env pythonimport SocketFrom http_parser.Parser Importar HttpParserDef Main (): P = Httpparser () s = soquete.socket (socket.af_inet, socket.sock_stream) corpo = [] tentar: s.connect (('gunicorn.org', 80)) s.send ("get / http / 1.1 \ r \ NHost: gunicorn.org \ r \ n \ r \ n ") Enquanto TRUE: Data = s.recv (1024) Se não dados: Break Recorded = len (data) nparsed = p.execute (dados, rected) assert ntarsed == recvado se p.is_headers_complete (): imprimir p.get_headers () se p.is_partial_body (): body.apponder (p.recv_body ()) se P.IS_MESSAGE_COMPLETE (): Break Imprimir "" .Join (corpo) Finalmente: S.Close () se __Name__ == "__main__": main () você pode encontrar mais documentos no código (ou usar um gererador do DOC). Requisitos: · Pitão · Cython Se você precisar reconstruir o código C


http-parser. Software Relacionado