gpt4 book ai didi

python - 使用 python 请求只下载文档的一部分

转载 作者:太空狗 更新时间:2023-10-29 20:34:47 24 4
gpt4 key购买 nike

我正在使用 python-requests 编写网络抓取工具。

每个页面都超过 1MB,但我需要提取的实际数据在文档流程的早期,所以我浪费时间下载了很多不必要的数据。

如果可能的话,我想在文档源代码中出现所需数据时立即停止下载,以节省时间。

例如,我只想提取“abc”Div中的文本,其余文档无用:

<html>
<head>
<title>My site</title>
</head>
<body>

<div id="abc">blah blah...</div>

<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris fermentum molestie ligula, a pharetra eros mollis ut.</p>
<p>Quisque auctor volutpat lobortis. Vestibulum pellentesque lacus sapien, quis vulputate enim mollis a. Vestibulum ultrices fermentum urna ac sodales.</p>
<p>Nunc sit amet augue at dolor fermentum ultrices. Curabitur faucibus porttitor vehicula. Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
<p>Etiam sed leo at ipsum blandit dignissim ut a est.</p>

</body>
</html>

目前我只是在做:

r = requests.get(URL)

最佳答案

你想在这里使用的是Range HTTP Header。

参见:http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html (特别是 Range 上的位)。

另请参阅 Custom Headers 上的 API 文档

示例:

from requests import get


url = "http://download.thinkbroadband.com/5MB.zip"
headers = {"Range": "bytes=0-100"} # first 100 bytes

r = get(url, headers=headers)

关于python - 使用 python 请求只下载文档的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23602412/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com