http-parser

Software screenshot:
http-parser
Rincian Software:
Versi: 0.8.3
Tanggal Upload: 20 Feb 15
Pengembang: Benoit Chesneau
Lisensi: Gratis
Popularitas: 2

Rating: nan/5 (Total Votes: 0)

http-parser adalah HTTP request / respon parser untuk Python di C di bawah MIT License, berdasarkan http-parser dari Ryan Dahl.
Instalasi:
pip install http-parser
Atau menginstal dari sumber:
git clone git: //github.com/benoitc/http-parser.git
cd http-parser && python setup.py install
Penggunaan:
http-parser memberikan parser.HttpParser tingkat rendah parser di C yang dapat Anda akses dalam program python dan http.HttpStream menyediakan akses tingkat yang lebih tinggi untuk dibaca, objek io.RawIOBase berurutan.
Untuk membantu Anda dalam pekerjaan hari Anda, http-parser prvides Anda 3 jenis pembaca dalam modul pembaca: IterReader untuk membaca iterables, StringReader untuk membaca string dan objek StringIO, SocketReader untuk membaca soket atau benda dengan sama & icirc; (Recv_into diperlukan). Anda cnan tentu saja menggunakan benda io.RawIOBase.
Likre http-parser di C Anda dapat melewati callback Anda sendiri untuk parser C, sehingga Anda akhirnya dapat mengurai asynchronous setiap aliran HTTP. Callback adalah:
on_message_begin ()
on_path (path)
on_query_string (query_string)
on_url (url)
on_fragment (fragmen)
on_header_field (lapangan, last_was_value)
on_header_value (key, value)
on_headers_complete ()
on_body (potongan)
on_message_complete ()
Contoh HttpStream
ex:
#! / Usr / bin / env python
socket impor
dari http_parser.http impor HttpStream
dari http_parser.reader impor SocketReader
def main ():
& Nbsp; s = socket.socket (socket.AF_INET, socket.SOCK_STREAM)
& Nbsp; coba:
& Nbsp; s.connect (('gunicorn.org', 80))
& Nbsp; s.send ("GET / HTTP / 1.1 r nHost: gunicorn.org r n r n")
& Nbsp; r = SocketReader (s)
& Nbsp; p = HttpStream (r)
& Nbsp; p.headers cetak ()
& Nbsp;. Print p.body_file () membaca ()
& Nbsp; akhirnya:
& Nbsp; s.close ()
jika __name__ == "__main__":
& Nbsp; main ()
Contoh HttpParser:
#! / Usr / bin / env python
socket impor
dari http_parser.parser impor HttpParser
def main ():
& Nbsp; p = HttpParser ()
& Nbsp; s = socket.socket (socket.AF_INET, socket.SOCK_STREAM)
& Nbsp; body = []
& Nbsp; coba:
& Nbsp; s.connect (('gunicorn.org', 80))
& Nbsp; s.send ("GET / HTTP / 1.1 r nHost: gunicorn.org r n r n")
& Nbsp; while True:
& Nbsp; data = s.recv (1024)
& Nbsp; jika tidak Data:
& Nbsp; istirahat
& Nbsp; recved = len (data)
& Nbsp; nparsed = p.execute (data, recved)
& Nbsp; menegaskan == nparsed recved
& Nbsp; jika p.is_headers_complete ():
& Nbsp; p.get_headers cetak ()
& Nbsp; jika p.is_partial_body ():
& Nbsp; body.append (p.recv_body ())
& Nbsp; jika p.is_message_complete ():
& Nbsp; istirahat
& Nbsp; print "" .join (tubuh)
& Nbsp; akhirnya:
& Nbsp; s.close ()
jika __name__ == "__main__":
& Nbsp; main ()
. Anda dapat menemukan lebih banyak dokumentasi dalam kode (atau menggunakan genererator doc)

Persyaratan :

  • Python
  • Cython jika Anda perlu untuk membangun kembali kode C

Perangkat lunak lain dari pengembang Benoit Chesneau

Couchapp
Couchapp

14 Apr 15

tproxy
tproxy

12 May 15

Restkit
Restkit

5 Jun 15

Komentar untuk http-parser

Komentar tidak ditemukan
Tambahkan komentar
Aktifkan gambar!