PythonのScapyを使用してTransfer-Encoding: chunkedのパケットを受信した際の生データを可読なテキストデータを取得したいです。
curlで該当URLにアクセスした際のレスポンスヘッダー情報は下記となります。
HTTP/1.1 200 OK Date: Wed, 14 Aug 2019 06:16:40 GMT Server: Apache/2.2.21 (Unix) DAV/2 mod_ssl/2.2.21 OpenSSL/1.0.0c PHP/5.3.8 mod_apreq2-20090110/2.7.1 mod_perl/2.0.5 Perl/v5.10.1 X-Powered-By: PHP/5.3.8 Cache-Control: no-store Vary: Accept-Encoding,User-Agent Transfer-Encoding: chunked Content-Type: text/event-stream
scapyのshow()で取得した情報は下記となります。
###[ TCP ]### sport = http dport = 53029 seq = 1036543614 ack = 1590392139 dataofs = 8 reserved = 0 flags = PA window = 122 chksum = 0xb26a urgptr = 0 options = [('NOP', None), ('NOP', None), ('Timestamp', (3922319464, 53724789))] ###[ HTTP ]### ###[ Raw ]### load = '8\r\n\x02a\x00\x00\x00\x00\xff\xff\r\n'
Transfer-Encoding: chunkedは\r\nで区切られているとの情報から\r\nで切り取り等を行いましたが上手く可読なテキスト形式での取得が行えません。
ご教授いただければ幸いです。
「Content-Encoding」の項目はありませんか?
Content-Encodingの項目は見当たりませんでした。
scapyでヘッダーを取得した際に見当たらなかったため、CURLでも叩いてみたいんですが、同じく見当たらない状態です。
同じ方法でgzipでエンコードを行ったのですが、'Not a gzipped file'とエラーが出てしまいます。
あなたの回答
tips
プレビュー