我正在使用cURL从其他网站获取一些元素。问题是另一个站点在1-2秒后加载了我需要的元素。所以我不通过cURL得到它们。
有没有办法让cURL在另一个网站上等待几秒钟才能将它返回给我?
答案 0 :(得分:0)
你可以使用sleep来延迟执行: http://php.net/manual/en/function.sleep.php
答案 1 :(得分:0)
如果您想要获取的内容有延迟,则很可能是通过AJAX调用检索的。
使用浏览器的开发人员工具检查AJAX(XHR)调用。例如,如果您使用谷歌浏览器,请按F12(或Mac上的cmd + alt + I)并打开网络面板。
单击XHR以按AJAX请求过滤。打开/刷新页面并单击结果以查看哪个调用包含您需要的数据。然后在curl请求中使用其URL来获取数据。
答案 2 :(得分:0)
如果网站在加载页面后加载内容,则可能意味着它使用单独的ajax请求(JavaScript)来获取该内容。
您必须使用curl或其他方式模拟这些请求... 使用浏览器开发人员工具准确查找正在进行的请求。您可能还需要解析原始页面中的某些参数,然后进行curl调用。