从TikTok抓取数据吗?

时间:2019-11-19 19:51:06

标签: php curl screen-scraping

所以我正在尝试从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);

1 个答案:

答案 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);
}

或者可能是错误已结束,您应该重试直到得到非空的响应。