2013-03-20 74 views
-1

我有一个奇怪的问题。我正在尝试获取网页的内容(例如Google)并检查网页是否包含一些文本。听起来像一个简单的任务,但我不能让它工作。在运行这样的脚本之后总是会出现FALSE检查页面是否包含PHP中的一些文本

$site_url = "http://google.com"; 
$site = file_get_contents($site_url); 
//echo $site; 

$pos = stripos($site,"window.chrome"); 
var_dump($pos); 

您是否有一些想法如何在页面内进行搜索?什么是快速解决方案,因为我需要把它放在一些循环中?

+0

5秒阅读[stripos]手册页(http://php.net/manual/en/function.stripos.php)将有助于 – 2013-03-20 22:40:27

+0

$网站有什么? – Tchoupi 2013-03-20 22:40:41

+0

整个页面在$ site。 – bla0009 2013-03-20 22:41:49

回答

3
如果你 echo $site,做一个发现

window.chrome不存在

我的猜测是,当浏览器加载,相关的JavaScript被注入到页面,并做了file_get_contents不会触发任何这是否

+0

echo $网站转储我完成谷歌页面。当我去查看页面源时,我可以看到window.chrome – bla0009 2013-03-20 22:45:09

+0

我没有显示,也不是julesj显然。这就是我看到http://pastie.org/6644112 – Ronnie 2013-03-20 22:46:35

+0

确保你正在查看你的页面的来源,而不是谷歌 – Ronnie 2013-03-20 22:48:01

2

请检查内容$site。它不包含'window.chrome',因此得到false是合理的。如果您搜索“window.google”,您将获得一个位置。

+0

你是对的。但是当我去页面源的谷歌页面,我可以找到window.chrome – bla0009 2013-03-20 22:44:30

+0

这是怎么发生的? – bla0009 2013-03-20 22:46:33

+0

非常感谢您的帮助 – bla0009 2013-03-20 22:51:03

相关问题