http-parser

HTTP-aanvraag / reactie PARDER
Download nu

http-parser Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • MIT/X Consortium Lic...
  • Naam uitgever:
  • Benoit Chesneau
  • Uitgever website:
  • http://code.google.com/u/bchesneau/

http-parser Tags


http-parser Beschrijving

HTTP-aanvraag / respons parser HTTP-PARDER is een HTTP-aanvraag / respons Parser voor Python in C onder MIT-licentie, op basis van HTTP-PARDER van Ryan Dahl.Installation: PIP Installeer HTTP-PARSEROR INSTALLATIE uit de bron: Git Clone Git: //github.com/benoitc/ HTTP-PARDER.GITCD HTTP-PARDER PYTHON SETUP.PY INFLECTUSAGE: HTTP-PARDER Geef u Parser.httpParser Low-level PARDER PARDER IN C dat u toegang hebt in uw Python-programma en http.httpstream die hogere toegang tot een leesbare, opeenvolgende toegang biedt io.rawiobase-object. Om u te helpen in uw dagwerk, HTTP-PARDER PRVIDES YOU 3 SOORTE lezers in de lezersmodule: iterreder om iterables te lezen, stringreader om snaren en stringio-objecten, Socketreer te lezen om aansluitingen of objecten met dezelfde aîzen te lezen (Recv_into nodig). U gebruikt natuurlijk elk io.rawiobase-object.likre HTTP-PARDER IN C U kunt uw eigen callbacks doorgeven aan de C-parser, zodat u uiteindelijk asynchroon elke HTTP-stream kunt ontleden. Callbacks zijn: on_message_begin () on_path (pad) on_query_string (query_string) on_url (url) on_fragment (fragment) on_header_field (veld, last_was_value) on_header_value (sleutel, waarde) on_headers_complete () on_body (chunk) on_message_complete () Voorbeeld van HTTPSTREAMEX: #! / USR / BIN / ENV PYTHONIMPORT SPAKKOPGROOM HTTP_PARSER.HTTP Importeer HTTPSTRAMFROM HTTP_PARSER.READER IMPORT SOCKETREERDEF MAIN (): S = Socket.Socket (Socket.Af_inet, Socket.Sock_Stream) Probeer: S.Connect (('Gunicorn.org', 80 )) S.SEND ("GET / HTTP / 1.1 \ R \ NHOST: GUNICORN.ORD \ R = SOCKETREER (S) P = HTTPSSTREAM (R) PRINT P.HOOGERS () PRINT P .Body_File (). Lees () Eindelijk: s.close () als __name__ == "__MAIN__": MAIN () Voorbeeld van HTTPPARSER: #! / USR / BIN / ENV PYTHONIMPORT SocketFrom HTTP_PARSER.PARSER IMPORT HTTPPARSERDEF MAIN (): P = HTTPPARSER () S = Socket.Socket (Socket.af_inet, Socket.Sock_Stream) Body = [] Probeer: S.Connect (("Gunicorn.org ', 80)) S.SEND (" Get / HTTP / 1.1 \ R \ Nhost: gunicorn.org \ r \ n \ r \ n ") Terwijl TRUE: Data = S.RECV (1024) Zo niet-gegevens: break Recvved = Len (gegevens) NPARSED = P.Execute (gegevens, teruggegeven) Assert NPARSED == Recvved If P.is_headers_Complete (): P. Get_Headers () If P.is_Partial_Body (): Body.Anthbend (P.Recv_Body ()) P.Is_Message_Complete (): Break Print "" .join (lichaam) eindelijk: s.close () als __Name__ == "__MAIN__": MAIN () U kunt meer documenten vinden in de code (of een DOC-generator gebruiken). Vereisten: · Python · Cython Als u de C-code opnieuw moet opbouwen


http-parser Gerelateerde software