我试图从 Linux 终端 cURL 读取谷歌翻译数据:
curl -i --user-agent "" -d "sl=en" -d "tl=sk" --data-urlencode "text=hi" https://translate.google.com
它返回了整个页面,我可以在其中看到翻译结果。结果在一个 HTML 元素中。 但是当我用 PHP 的 cURL 尝试它时,它没有输出相同的 HTML,而且我找不到翻译结果。
$data = [
"sl" => "en",
"tl" => "sk",
"text" => urlencode("hi");
];
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, "https://translate.google.com");
curl_setopt($ch,CURLOPT_POST, count($data));
curl_setopt($ch,CURLOPT_POSTFIELDS, $data);
curl_setopt($ch,CURLOPT_HEADER, true);
curl_setopt($ch,CURLOPT_USERAGENT, "");
curl_exec($ch);
谢谢你帮助我,我怎样才能在 PHP 中返回与在 Linux cURL 中相同的结果。
最佳答案
使用$response = curl_exec($ch);
$data = [
"sl" => "en",
"tl" => "sk",
"text" => urlencode("hi")
];
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, "https://translate.google.com");
curl_setopt($ch,CURLOPT_POST, true);
curl_setopt($ch,CURLOPT_POSTFIELDS, $data);
curl_setopt($ch,CURLOPT_HEADER, true);
curl_setopt($ch,CURLOPT_USERAGENT, "");
$respond = curl_exec($ch);
echo $respond;
curl_close($ch);
关于PHP cURL 与 Linux cURL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24860543/