为了账号安全,请及时绑定邮箱和手机立即绑定

如何在PHP中获取网页的HTML代码?

/ 猿问

如何在PHP中获取网页的HTML代码?

慕尼黑8549860 2019-11-12 10:19:59

我想在PHP中检索链接(网页)的HTML代码。例如,如果链接是


https://stackoverflow.com/questions/ask


那么我要提供该页面的HTML代码。我想检索此HTML代码并将其存储在PHP变量中。


我怎样才能做到这一点?


查看完整描述

3 回答

?
杨魅力

如果您的PHP服务器允许使用url fopen包装器,那么最简单的方法是:


$html = file_get_contents('http://stackoverflow.com/questions/ask');

如果需要更多控制,则应查看cURL函数:


$c = curl_init('http://stackoverflow.com/questions/ask');

curl_setopt($c, CURLOPT_RETURNTRANSFER, true);

//curl_setopt(... other options you want...)


$html = curl_exec($c);


if (curl_error($c))

    die(curl_error($c));


// Get the status code

$status = curl_getinfo($c, CURLINFO_HTTP_CODE);


curl_close($c);


查看完整回答
反对 回复 2019-11-12
?
弑天下

您可能想从Yahoo签出YQL库:http : //developer.yahoo.com/yql


手头的任务很简单


select * from html where url = 'http://stackoverflow.com/questions/ask'

您可以在控制台中尝试以下操作:http : //developer.yahoo.com/yql/console(需要登录)


另请参阅Chris Heilmanns截屏,以获取一些不错的想法,您还可以做什么:http : //developer.yahoo.net/blogs/theater/archives/2009/04/screencast_collating_distributed_information.html


查看完整回答
反对 回复 2019-11-12
?
呼啦一阵风

简单方法:使用file_get_contents():


$page = file_get_contents('http://stackoverflow.com/questions/ask');

请注意,allow_url_fopen一定要true在你php.ini能够使用URL的fopen封装。


更高级的方法:如果您不能更改PHP配置,默认情况下allow_url_fopen是false默认设置,并且如果安装了ext / curl,请使用该cURL库连接到所需的页面。


查看完整回答
反对 回复 2019-11-12

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信