如何在 Linux/Python/Tweepy 环境中使用 LZO 压缩 Twitter 流?
How to compress Twitter streaming using LZO in Linux/Python/Tweepy environment?
我正在使用 Tweepy(Python Twitter API 库)从 Twitter 接收大量数据流。我想做的是压缩接收到的推文流并将它们存储在文件中。
压缩必须是 LZO,我不想使用 Linux 管道进行压缩。我想直接从 Python 代码中使用 LZO。使用 Linux 个管道我可以做到:
Python downloader.py | lzop -c > output.json.lzo
但我不想使用管道,而是想在 Python 脚本下载器中压缩流。
我找不到任何 Python 库或示例代码来使用 LZO 压缩流数据。
两个选项:
使用 library.
如果由于某种原因您无法使用该库,则以下代码与您编写的代码等效:
from subprocess import Popen, PIPE, STDOUT
p = Popen(['lzop', '-c'], stdout=PIPE, stdin=PIPE, stderr=STDOUT)
result_stdout = p.communicate(input=json.dump(results))[0]
我正在使用 Tweepy(Python Twitter API 库)从 Twitter 接收大量数据流。我想做的是压缩接收到的推文流并将它们存储在文件中。
压缩必须是 LZO,我不想使用 Linux 管道进行压缩。我想直接从 Python 代码中使用 LZO。使用 Linux 个管道我可以做到:
Python downloader.py | lzop -c > output.json.lzo
但我不想使用管道,而是想在 Python 脚本下载器中压缩流。
我找不到任何 Python 库或示例代码来使用 LZO 压缩流数据。
两个选项:
使用 library.
如果由于某种原因您无法使用该库,则以下代码与您编写的代码等效:
from subprocess import Popen, PIPE, STDOUT p = Popen(['lzop', '-c'], stdout=PIPE, stdin=PIPE, stderr=STDOUT) result_stdout = p.communicate(input=json.dump(results))[0]