問題タブ [zlib]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gzip - deflateとminifyを組み合わせる-オーバーヘッドを作成していますか?
google.codes minifyを使用して、cssファイルとjsファイルをその場で縮小します。また、すべてのcssファイルとjsファイルでdeflateを使用するように.htaccessを設定しました。これは、一部のjsファイル(shadowboxやtinymceなど)がコード内の他のjsファイルを参照している理由です。だから私はapachedeflateで圧縮していて、minifyはgzipでいくつかのjsファイルとcssファイルを圧縮しています-これを行うことでオーバーヘッドを作成しています-最初にgzip(minify)、次にzlib(deflate)が再び実行されます。または、apache deflateは、ヘッダーにminifyによって設定された属性を持つすでにgzip圧縮されたファイルを無視します。誰かこれで何か経験がありますか?
sockets - gzipされたデータのzlibから圧縮サイズを決定する方法は?
zlib を使用して gzip 圧縮を実行しています。zlib は、データを圧縮した後、開いている TCP ソケットにデータを直接書き込みます。
(もちろん、すべてのエラー処理は削除されます)
問題は、ソケットに書き込まれたバイト数をどのように判断するかです。zlib のすべての gz* 関数は、圧縮されていないドメインのバイト カウント/オフセットを処理します。
zlib.h ヘッダーには、「このライブラリは、必要に応じてメモリ内の gzip ストリームを読み書きすることもできます」と記載されています。バッファへの書き込みは機能します (その後、バッファをソケットに書き込むことができます) が、インターフェイスでそれを行う方法がわかりません。
python - AppEngineでTaskQueuePython APIを使用して圧縮データを渡すにはどうすればよいですか?
次のように、タスクキュー内のタスクで圧縮データを使用しようとしています。
しかし、私がそのようにキューハンドラーでそれを解凍しようとすると
このエラーが発生します:
UnicodeEncodeError:'ascii'コーデックは位置2の文字u'\ u06b8'をエンコードできません:序数が範囲内にありません(128)
ここで何が起こっているのか知っている人はいますか?回避策はありますか?
python - Python: gzip されたファイルのようなストリーミングを作成しますか?
Python の でストリームを圧縮する最良の方法を見つけようとしていますzlib
。
私は、ファイルのような入力ストリーム (下の ) と、ファイルのような (下の )input
を受け入れる出力関数を持っています。output_function
input
そして、チャンクをに送信する前に gzip 圧縮したいと思いますoutput_function
:
gzipモジュールは、入力または出力のいずれかがディスク上のgzipされたファイルであると想定しているように見えます。
ただし、ストリーム ファイルのようなものを作成する簡単な方法をネイティブに提供するわけではありません。また、サポートするストリーム圧縮は、手動でデータを圧縮バッファーに追加し、そのバッファーをフラッシュすることによって実現されます。
もちろん、zlib.Compress.compress
and zlib.Compress.flush
( Compress
is returned by zlib.compressobj()
) の周りにラッパーを書くこともできますが、バッファ サイズが間違っていたり、似たようなことが起きたりするのではないかと心配です。
では、Python を使用して gzip 圧縮のようなストリーミング ファイルを作成する最も簡単な方法は何でしょうか?
編集:明確にするために、入力ストリームと圧縮された出力ストリームはどちらも大きすぎてメモリに収まらoutput_function(StringIO(zlib.compress(input.read())))
ないため、実際には問題を解決できません。
zlib - Zlibエラーメッセージ
Windows XPで「LaxiusPower」と呼ばれる古い学校のRPGをプレイしているときに、「zlibエラー」メッセージが表示されます。それは私をゲームから追い出すだけです!どうすれば修正できますか?
http - C http リクエスト gzip (zlib)
winsock を使用して http 要求を作成しており、応答を解析する必要があります。問題は、リクエスト ヘッダーで指定した内容に関係なく、一部のサイトが gzip されることです。リクエストをダウングレードしようとしましたHTTP/1.0
が、成功しませんでした。だから今、私は deflate/gzip のサポートを追加しようとしていますが、うまくいきません。プログラムに圧縮されたコンテンツをファイルに書き込んでもらいました。次に、ツールで解凍しようとgzip
しましたが、マルチパート gzip ファイルであるというエラーが表示されました。いくつか読んだ後、これはバイナリとして処理されていないために gzip ヘッダーが破損していることが原因であることがわかりました。この時点で何をすべきかわかりません。
g++ - libpngとzlibとのリンク?
libjpegとlibpngの両方を使用するプロジェクトをコンパイルしようとしています。libpngにはzlibが必要なことを知っているので、3つすべてを個別にコンパイルし、それら(libjpeg.a、libpng.a、libz.a)を.というフォルダーに配置しましたlinrel32
。次に実行するのは次のとおりです。
g++ -Llinrel32/ program.cpp otherfile.cpp -o linrel32/executable -Izlib/ -Ilpng140/ -Ijpeg/ -lpthread -lX11 -O2 -DLINUX -s -lz -lpng -ljpeg
したがって、3つのライブラリを含めます。それでも、リンカーは次のように文句を言います。
(...あなたはアイデアを得る:D)
不足している関数がzlibからのものであることはわかっているので、そこにzlibを追加しています。libz.aを開きましたが、構造が良好なようです。それを再コンパイルすると、すべてが正常に見えます。そうではありません...
わかりませんが、問題は些細なことである可能性が高く、私が必要としているのはしばらく眠ることです。しかし、それでも、あなたが私がこのことを理解するのを手伝ってくれるなら...
python - Python decompressing gzip chunk-by-chunk
I've a memory- and disk-limited environment where I need to decompress the contents of a gzip file sent to me in string-based chunks (over xmlrpc binary transfer). However, using the zlib.decompress() or zlib.decompressobj()/decompress() both barf over the gzip header. I've tried offsetting past the gzip header (documented here), but still haven't managed to avoid the barf. The gzip library itself only seems to support decompressing from files.
The following snippet gives a simplified illustration of what I would like to do (except in real life the buffer will be filled from xmlrpc, rather than reading from a local file):
Unfortunately, as I said, this barfs with:
Theoretically, I could feed my xmlrpc-sourced data into a StringIO and then use that as a fileobj for gzip.GzipFile(), however, in real life, I don't have memory available to hold the entire file contents in memory as well as the decompressed data. I really do need to process it chunk-by-chunk.
The fall-back would be to change the compression of my xmlrpc-sourced data from gzip to plain zlib, but since that impacts other sub-systems I'd prefer to avoid it if possible.
Any ideas?
java - Python の zlib.compress と Java (Android) の Deflate.deflate は互換性がありますか?
Python アプリケーションを Android に移植していますが、ある時点で、このアプリケーションは Web サービスと通信し、圧縮データを送信する必要があります。
そのために、次の方法を使用します。
次の方法を使用して、Android でこの動作をエミュレートしようとしています。
しかし、サーバーからの HTTP 応答は正しくありません。これは、Java での圧縮の結果が Python での圧縮の結果と同じではないためだと思います。
zlib.compress と deflate の両方で "a" を圧縮する小さなテストを実行しました。
Python、zlib.compress() -> x%9CSJT%02%00%01M%00%A6
Android、Deflater.deflate -> H%EF%BF%BDK%04%00%00b%00b
Android でデータを圧縮して、Python で zlib.compress() の同じ値を取得するにはどうすればよいですか?
ヘルプ、ガイダンス、またはポインタは大歓迎です!