php curl抓取网页内容(PHP外部资源函数fopen/file_get_contents好很多)
优采云 发布时间: 2022-03-09 18:14php curl抓取网页内容(PHP外部资源函数fopen/file_get_contents好很多)
1、fopen 的使用
复制代码代码如下:
复制代码代码如下:
// 以下代码可用于 PHP 5 及以上版本
但是上面的代码很容易出现开流失败:HTTP request failed!错误,解决办法 有人说在php.ini中有两个选项:allow_url_fopen =on(表示可以通过url打开远程文件),user_agent="PHP"(表示使用哪个脚本访问网络,有默认情况下,它前面是一个“;”。)重新启动服务器。
但是,有些仍然有此警告信息,距离完美解决方案还有一步之遥。您必须在 php.ini 中设置 user_agent。php默认的user_agent是PHP,我们改成Mozilla/4.0(兼容Mozilla/4.0)。; MSIE 6.0; Windows NT 5.0) 模拟浏览器
user_agent="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" 工作中遇到这个问题,完美解决,分享一下跟大家。
2、由 curl 实现
复制代码代码如下:
linux下,可以使用以下代码下载
exec("wget {$url}"); PHP 获取外部资源函数 fopen/file_get_contents/curl 的区别 fopen/file_get_contents 会对每个请求重新做 DNS 查询,并且不会缓存 DNS 信息。
但是 CURL 会自动缓存 DNS 信息。对同一域名下的网页或图片的请求只需要一次 DNS 查询。
这大大减少了 DNS 查询的数量。
所以 CURL 的性能比 fopen/file_get_contents 好很多。网页设计原创内容,转载请注明出处。
TAG标签:获取远程网页内容的PHP代码(fopen、curl已测试)
一白互联网是国内知名的网站建设品牌服务商。我们在网站 建设、网站 制作、网页设计、php 开发、域名注册和虚拟主机服务方面拥有九年的经验。所提供的自助建站服务更是享誉全国。近年来还整合团队优势,自主研发可视化多用户《点云建站系统》3.0平台版,拖放排版网站制作设计,轻松实现PC站、手机微网站、小程序、APP一体化网络营销网站建设,已成功为全国数百家网络公司提供自助平台搭建服务。
上一篇: 完美解决PHP报错无法打开流:HTTP请求失败!
下一篇:PHP发明者谈MVC和网站设计架构 好像不支持PHP with mvc
[返回新闻列表]