www.dbpj.net > 用phpstuDy本地调试,FilE_gEt_ContEnts0抓取失败,...

用phpstuDy本地调试,FilE_gEt_ContEnts0抓取失败,...

file_get_contents()读取数据需要时间.你一下循环的话.会出现前一个没读完

echo file_get_contents($filename);?>可以用了就给分把

那实际上有没有读到内容?如果有实际读到内容,可以用 @ 将错误屏蔽,如:$path = 'xxxx.txt';$content = @file_get_contents($path); 追问: 有读到内容,加了@符号,好像不能解决诶. 追答: 还是有notice 错误?那可以尝试在开头加入:error_reporting(0); 追问: 那出现警告的原因是什么? 追答: 不太清楚哦, 你可以复制错误到 stackoverflow 问一问. 评论0 0 0

有三个原因:第一个主因是网速,虽然你使用的是电信6M宽带,但网速还是无法与虚拟服务器相比,虚拟服务器所限制的网速一般只是上传速度,下载的速度并不限制,没有谁使用虚拟服务器去大量下载数据.另外,虚拟主机再怎么差,连接

框架spring,用的异步加载,只有浏览器解析了 一些JS 才会调用框架去执行JBOSS 的一些控件,直接抓取未解析html 所以看不见具体内容.

估计是COOKIE在作怪,我在网页打开22页,嗅到的调用是:http://house.focus.cn/search/0_0_0_0_0_0_0_0_0.html?&page=22&allpage=----------------------------------------------------------------------GET /search/0_0_0_0_0_0_0_0_0.html?&page=22&

检查请求头是否正常再看看别人怎么说的.

是的,file_get_contents($url)是速度比较低的,很容易抓取失败.应该用socket或curl来抓取.其中curl性能也比较低.最好用socket,不过前提是要抓取的页面所在服务器要支持socket,大多数是支持的.file_get_contents速度慢同时又不支持socket的服务器是极少见的.我可以写一个通用的socket抓取函数给你,代码比较长,你留下个email.

并不能抓到,要是能抓取到,那不是 淘宝 百度这些后台页面都能看到?那多危险,你只能抓取到人家解析完以后的数据,就是你输入网址能看到的数据,看不到的基本都抓不到

那你试着把 url 编码一下

相关搜索:

网站地图

All rights reserved Powered by www.dbpj.net

copyright ©right 2010-2021。
www.dbpj.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com