我想获得一个网页 '标题', 'description'and'keywords' 我知道3种方式来实现这项工作:如何通过php从外部网页获取内容?
一)使用卷曲
B)使用的fopen
c)使用get_meta_data()
奇怪的是,上述每一个都不能每次都正确地工作。
对于相同的网址:
有时,我可以获取内容。
有时,它返回一个错误: '未能打开流:HTTP请求失败'
我confused.WHY? 帮我:)
我想获得一个网页 '标题', 'description'and'keywords' 我知道3种方式来实现这项工作:如何通过php从外部网页获取内容?
一)使用卷曲
B)使用的fopen
c)使用get_meta_data()
奇怪的是,上述每一个都不能每次都正确地工作。
对于相同的网址:
有时,我可以获取内容。
有时,它返回一个错误: '未能打开流:HTTP请求失败'
我confused.WHY? 帮我:)
您可以使用file_get_contents("http://someurl.com");来获取外部网站。
结果将是一个包含整个网页HTML的字符串。然后,您可以使用PHP的HTML解析器解析该HTML,以获取所需的信息。
编辑正如El Yobo所述,此功能可以禁用。要启用它,您需要启用fopen wrappers。
可能值得尝试找出错误代码是什么?你是否试图在第三方服务器上执行HttpRequest - 可能是因为他们限制了你的访问权限,也可能是其他许多事情,包括合法的超时,因为你的互联网连接不好,因此可能值得发布一些更多的数据:-)
“有时候”让我觉得可能有问题,你的连接到你的服务器的网络。您是否尝试直接从服务器浏览页面,例如使用curl
或wget
?
否则,我通常按照Luca的建议实施file_get_contents。 http://www.php.net/manual/en/function.file-get-contents.php
你得到同样的错误了所有的链接或仅只是一个链接 – 2010-12-06 09:46:41
*(相关)* [最佳方法来解析HTML(http://stackoverflow.com/questions/3577641/best-方法分析-html/3577662#3577662) – Gordon 2010-12-06 09:55:16