在谷歌翻译中获取div的内容无法正常工作

时间:2015-05-16 07:48:53

标签: php simple-html-dom

我正在尝试使用simple_html_dom在google translate中获取ID为result_box的div的内容,但它不会返回任何内容。我试图返回另一个div的内容,它工作得很好。看起来问题就在于那个div result_box是翻译将出现的div。

这是我的代码

$googleSearch="the contente i want to translate";
$googlePage="https://translate.google.com/#en/ar/$googleSearch";

$Chtml = file_get_html($googlePage);
$gt = $Chtml->find('#result_box ',0)->plaintext;
echo '<br>'.$gt.'<br>';

可能是什么原因?我该如何解决呢? 如果simple html dom无法做到这一点,有没有其他方法可以做到这一点?

  

请注意,我不想使用Google翻译API

1 个答案:

答案 0 :(得分:0)

result_box元素没有任何纯文本:

<div style="zoom:1" dir="ltr">
   <div id="tts_button">
   <span id="result_box" class="short_text" lang="en">
      <span class="hps">spring</span>
   </span>
</div>

我不知道$Chtml->find('#result_box',0)正在做什么,但您可能需要迭代到下一个<span>并从那里获取文字

修改

此外,我不知道Id上的尾随空格是否会阻止simple_hmtl_dom找到任何内容:

$Chtml->find('#result_box ',0)$Chtml->find('#result_box',0)