gpt4 book ai didi

linux - 有谁知道如何使用CURL下载 "fake"?

转载 作者:太空宇宙 更新时间:2023-11-04 05:37:34 26 4
gpt4 key购买 nike

希望很快,我有一项任务是查看 URL 在我们的 TFS 服务器上是否仍然有效,因为我正在做一些内务处理。

目前,我有一个需要检查的 URL 列表,我正在使用 CURL。问题是我有 1000 个 URL 需要检查,每个人都会自动下载一个文件。

有没有办法“伪造”下载?我的意思是,有没有一种方法可以让我在不实际下载文件的情况下确认 URL 是否有效,因为有 1000 个 URL,如果我要全部下载它们,这将花费大量时间来浏览,并且会占用硬盘空间?

提前致谢:)

<小时/>

更新

TFS 是 Team Foundation Server,

这是我当前的测试代码;

curl -k -u $userPass $url --output test.zip

此代码 ^^^ 成功下载了我想要的文件,但一旦我添加“-v”来获取 header ,它就会破坏下载并给我一个 405 响应代码。

最佳答案

发出 HTTP HEAD 请求并仅下载 header ,这样您就可以检查它是否返回“HTTP 404 Not Found”或其他内容,您可以使用 -I 参数通过curl 来执行此操作,但对于大型列表,您不应该使用 cli 程序curl,您应该使用 libcurl curl_multi API,它可以使用异步连接同时检查数百甚至数千个 url,这比您从 cli 程序执行的任何操作都要快得多。此代码使用curl_multi API 使用 PHP 检查大型 URL 列表:https://stackoverflow.com/a/54353191/1067003

将该代码放入 .php 脚本中并从 php-cli 运行它应该比从 cli 程序curl 实现的任何操作都要快得多。

如果这对您来说仍然太慢,您可以使用 curl_multi C API 在 C/C++ 中重写它。 ,它的运行速度甚至比上面的 PHP 实现还要快~(PHP 使用的 CPU 明显多于 C 实现使用的 CPU。使用解释语言的缺点之一。不过,此时您的瓶颈可能是带宽,而不是 CPU)

关于linux - 有谁知道如何使用CURL下载 "fake"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59453842/

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