我想知道是否有办法通过cURL获取特定数量的数据?
选项1:
curl_setopt ($curl_handle, CURLOPT_HTTPHEADER, array("Range: bytes=0-1000"));
但并非所有服务器都支持。
选项2:
Having trouble limiting download size of PHP's cURL function,但这个函数给我返回错误 Failed writing body (0 != 11350)
。据我所知,很多人说这是一个bug。
因此,我尝试使用上面的write_function
,将curl_close($handle)
替换为returning 0
,但这会引发一个错误Attempt to close cURL handle from a callback
。
现在我唯一能想到的方法是解析内容长度的标头但这最终会导致2个请求??
第一个请求是使用CURLOPT_NOBODY
获取标头,然后获取完整内容?
<link>
标签以获取CSS和<a>
标签以爬取同一域中的其他链接,以获取可能的其他“unique” CSS文件并将它们连接起来并压缩。由于CSS文件和原始HTML文件通常不超过500kb,因此我想对其进行限制,以防黑客通过使我的站点解析大量锚标记而给我的服务器额外负载。 - Shishantfsockopen
和相关函数来实现,但这种优化并不值得。记住,“过早的优化是万恶之源”。 - sanmai