所以我正在尝试从TikTok抓取数据,但是出了点问题。 有时返回整页,有时返回:
{"statusCode":200,"contentType":"text/html","content":""}
有时甚至返回
Redirecting to (tiktok url)
它实际上从未重定向到提到的URL。
有什么办法可以不断地删除主页? 这是我当前的代码:
$pageurl = "https://www.tiktok.com/@".$_GET["username"];
$ch = @curl_init($pageurl);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10240');
$result = curl_exec($ch);
echo $result;
curl_close($ch);
答案 0 :(得分:0)
使用CURL进行请求时,默认情况下不遵循重定向。要使其遵循重定向,需要FOLLOWLOCATION
设置,例如:
$ch = @curl_init($pageurl);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10240');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
对于空响应,您可能遇到错误,因此应检查以下内容:
if (curl_errno($ch)) {
echo "Error: " . curl_error($ch);
}
或者可能是错误已结束,您应该重试直到得到非空的响应。