关于采集使用函数的疑问

zairwolfo 2006-01-08 11:14:49
我一直使用file_get_contents来进行远程文件读取然后正则分析。但是发现效率不是很理想。
在普通服务器上用,无法使用curl函数(很少有服务器有这个扩展),所以只能使用fsockopen、fopen、file等函数来实现。
今天做了一下测试,发现fsockopen然后fgets的效果似乎比file速度更快。
我尝试过去qq上请教一些比较成功的采集程序的制作人,但是很难得到人家的指点,也许都希望技术独有罢。

搜索之前的文章,关于远程读取的屈指可数,其中比较有用的也就是gu1dai的一篇询问可否多次fgets/fputs用同一个fsockopen句柄来节省资源提高效率的文章,但是其中并没有一个较好的解决方法。

请教:如果读取一个网站上多篇文章的时候,远程读取文件用什么效果更好?
...全文
106 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Meteorlet 2006-01-09
  • 打赏
  • 举报
回复
我曾经也碰到过 feof() 在网页全部读取以后一直为false造成死循环,可以增加判断条件,判断fgets的内容是否为空
zairwolfo 2006-01-09
  • 打赏
  • 举报
回复
不知道为什么我的采集特曼。
Meteorlet 2006-01-08
  • 打赏
  • 举报
回复
技术上没有什么特有的,就是SOCKET, 用fsockopen()函数就行了,每个HTTP请求就是一个SOCKET连接,这是协议规定的,不可能通过一个socket访问所有连接。
zhiin1 2006-01-08
  • 打赏
  • 举报
回复
比较关注这种问题!

如果用PHP采集好像一般都用socket来模拟多线程!

希望哪位大侠能给个例子让我们学习一下!~

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧