【问题标题】:Creating a warc record with requests.get() response using warcio使用 warcio 创建一个带有 requests.get() 响应的 warc 记录
【发布时间】:2018-03-22 12:52:42
【问题描述】:

我正在使用warcio 库来读取和写入warc 文件。

当尝试从requests.get(URL,stream=False) 写入响应对象的记录时,warcio 仅将 HTTP 标头写入记录,而不是负载。但是,启用流模式后,它可以正常工作。

在未启用流模式时是否可以存储有效负载?

【问题讨论】:

    标签: python python-3.x python-requests warc


    【解决方案1】:

    我找到了一种解决方法,但不确定它是否正确。我没有使请求对象可流式传输,而是使有效负载可流式传输 BytesIO(response.text.encode()) 这似乎有效。

    【讨论】:

    • 此解决方法不是流式传输; BytesIO() 用整个响应体初始化。
    • 正确。基本上,warcio 有效负载需要一个类似 BytesIO 的对象。当请求处于流模式时,它会自动处理,否则传递 BytesIO(response.content) 对象可以正常工作
    猜你喜欢
    • 2018-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多