微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 如何从远程服务器收集HTML源代码响应?

在我的一个服务器页面中的HTML代码中,我需要解决搜索位于另一个我自己不拥有的远程服务器的数据库上的特定项目.

执行我的请求的搜索类型示例:http://www.remoteserver.com/items/search.php?search_size=XXL

远程服务器向我(作为客户端)提供响应,该响应显示包含与我的搜索条件匹配的多个项目的页面.

我不想显示页面.我想要的是收集一个字符串(或本地文件)远程服务器HTML响应的全部内容(当我们点击我的IE浏览器客户端中的“查看源”时我们可以访问的代码).

如果我收集该数据(它可以轻松达到50000字节),我可以过滤我感兴趣的数据(子字符串),并为远程服务器组合一个新请求,只提供响应中的一个特定项目.

有什么方法可以通过Javascript或PHP从远程服务器提供的响应中获取HTML,还避免在浏览器中显示响应?

我希望我没有混淆你的思想……
感谢您提供的任何帮助.

解决方法:

正如@mario所提到的,有几种不同的方法可以做到这一点.

使用file_get_contents()

$txt = file_get_contents('http://www.example.com/');
echo $txt;

使用PHP的curl函数

$url = 'http://www.mysite.com';
$ch = curl_init($url);

// Tell curl_exec to return the text instead of sending it to STDOUT
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

// Don't include return header in output
curl_setopt($ch, CURLOPT_HEADER, 0);

$txt = curl_exec($ch);
curl_close($ch);

echo $txt;

curl可能是最强大的选项,因为您可以选择更好地控制确切的请求参数以及在事情没有按计划进行时进行错误处理的可能性

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐