喜悦国际村 
» 游客:  注册 | 登录 | 搜索 | 统计 | 帮助

RSS 订阅当前论坛  

喜悦证交所已经关闭

上一主题 下一主题
 11  1/2  1  2  > 
     
标题: [问题] 怎么安排多线程采集的网址  
 
52php
中级会员
Rank: 3Rank: 3



UID 84572
精华 0
积分 361
帖子 225
金钱 361 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2006-12-10
状态 离线
[广告]: q m
怎么安排多线程采集的网址

最近看了dede自带的采集器,对于里面模拟多线程采集的网址安排搞不清楚。他所谓的多线程其实就是用多个框架打开同一个页面执行相同的任务,下面的代码是框架部分的代码,这个我能理解,不过采集器部分的url代码应该怎么写呢?

if($threadnum>0)
{
        $step = ceil($totalnum / $threadnum);
        $j = 0;
        for($i=1;$i<=$totalnum;$i++)
        {
                if($i%$step==0)
                {
                        $j++;
                        $sdd = ($i-$step);
                        $surl = "co_gather_start_action.php?islisten=$islisten&thethr=$j&sptime=$sptime&nid=$nid&oldstart=$sdd&startdd=$sdd&totalnum=".($step * $j)."&pagesize=$pagesize";
                        echo "<iframe scrolling='no' name='thredfrm$j' frameborder='0' width='100%' height='200' src='$surl'></iframe>\r\n";
                }
        }
        if($totalnum % $threadnum != 0)
        {
               
                $sdd = $j*$step;
                $k = $j+1;
                $surl = "co_gather_start_action.php?islisten=$islisten&thethr=$k&sptime=$sptime&nid=$nid&oldstart=$sdd&startdd=$sdd&totalnum=$totalnum&pagesize=$pagesize";
                echo "<iframe scrolling='no' name='thredfrm$j' frameborder='0' width='100%' height='200' src='$surl'></iframe>\r\n";
        }
        exit();
}
如果是简单的单线程可能是:
$url='http://baidu.com';
$fp=file($url);
...

但是多线程的一般是从数据库或者文本读取一个网址集合,应该如何结合上面的框架写这个url,让他们的采集不至于重复?

测试很久了没搞出来,做过采集器或者相关的、知道的朋友说下,谢过先!
2007-1-25 01:50 PM#1
查看资料  发短消息  顶部
 
koven
新手上路
Rank: 1
初级会员



UID 16363
精华 0
积分 38
帖子 63
金钱 38 喜悦币
威望 0
人脉 0
阅读权限 10
注册 2002-9-8
状态 离线
[推荐阅读] 临睡前发个灌水贴~~
我还没搞,不过也准备搞这方面了,关注一下



PHP静态博客系统:乌秋博客 :: http://www.koven.org
2007-1-25 03:30 PM#2
查看资料  访问主页  发短消息  ICQ 状态  顶部
 
漠北怪叟
金牌会员
Rank: 6Rank: 6



UID 70640
精华 0
积分 2374
帖子 393
金钱 2374 喜悦币
威望 0
人脉 0
阅读权限 70
注册 2006-3-29
状态 离线
[推荐阅读] (不是太简单)rewrite问题
错开来取的.不过觉得意义不大~



我的博客:http://hjc73.space.mywallop.cn,换窝了,http://my.haokan123.com/?104 自己开发的博客自己撑~
2007-1-25 04:37 PM#3
查看资料  Blog  发短消息  顶部
 
php5
金牌会员
Rank: 6Rank: 6
中级会员


UID 62897
精华 0
积分 1263
帖子 1112
金钱 1263 喜悦币
威望 0
人脉 0
阅读权限 70
注册 2005-1-3
来自 福建
状态 离线
[推荐阅读] 两种include的效率问题
用php做采集也是难为了
2007-1-25 04:56 PM#4
查看资料  发短消息  顶部
 
52php
中级会员
Rank: 3Rank: 3



UID 84572
精华 0
积分 361
帖子 225
金钱 361 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2006-12-10
状态 离线
[推荐阅读] 上海大千 高薪 诚聘 系统架构师


QUOTE:
原帖由 php5 于 2007-1-25 04:56 PM 发表
用php做采集也是难为了
我就卡在多线程的网址安排上

其实php的采集器不少,也有开元的,不过都是用->作的,偶看了累又看不懂

谁说下
2007-1-25 07:50 PM#5
查看资料  发短消息  顶部
 
LuckLrj (中国php中的爱因斯坦)
版主
Rank: 7Rank: 7Rank: 7
老会员


UID 64836
精华 0
积分 2599
帖子 3138
金钱 2599 喜悦币
威望 0
人脉 0
阅读权限 100
注册 2005-6-19
状态 离线
[推荐阅读] 上海大千 高薪 诚聘 网站策划师
$url='http://baidu.com';
$fp=file($url);
...


一个进程从列表的前段开始取,另一个从后段开始取,




学习,工作累了,请访问我的小站,娱乐一下。http://www.52sunny.net
2007-1-25 11:24 PM#6
查看资料  Blog  发短消息  顶部
 
奶瓶 (NP博士)
版主
Rank: 7Rank: 7Rank: 7
老仙


UID 52707
精华 4
积分 27777
帖子 6463
金钱 27727 喜悦币
威望 50
人脉 0
阅读权限 100
注册 2004-11-22
来自 北大中文系
状态 离线
[推荐阅读] 请问如何测试页面载入时间?
如果会一点perl,可以看看LWP这个包,非常牛,当然perl的线程机制不是很强
如果会一点C,可以看看……太多了





图片包子,注册送100包子!
域名抢注
2007-1-25 11:38 PM#7
查看资料  访问主页  Blog  发短消息  QQ  ICQ 状态  Yahoo!  顶部
 
phpxxx (phpxxx)
中级会员
Rank: 3Rank: 3
老会员



UID 27861
精华 0
积分 453
帖子 449
金钱 453 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2004-4-16
状态 离线
[推荐阅读] 请问如何写入不定项的多维数组到文件?
你这个只能放在页面里执行,一点都不体面~体面的做法是在命令行里面执行,这样便于用crontab周期性采集数据。

<?php
$uri_list 
= array (...);

foreach (
$uri_list as $uri) {
     
$pid pcntl_fork();
     if (
$pid == -1) {
         die(
"Could not fork process!");
     } else if (
$pid) {
             
// Create process $pid to deal it
     
} else {
             
fetch_uri ($uri); // Deal here
             
exit;
     }
}

function 
fetch_uri ($uri)
{
    ... ...
}
?>
2007-1-26 12:04 AM#8
查看资料  发短消息  顶部
 
飞豹游侠
高级会员
Rank: 4
超高级会员



UID 27267
精华 0
积分 776
帖子 1047
金钱 776 喜悦币
威望 0
人脉 0
阅读权限 50
注册 2004-3-26
来自 沈阳
状态 离线
[推荐阅读] 新年发利士,网通1G+100M MYSQL仅需99元,售完为止
多开几个网页



我发现我越来越菜,怎么办啊...
家长网
龙之剑,深圳民间反扒队,欢迎加入
2007-1-26 09:42 AM#9
查看资料  访问主页  发短消息  QQ  顶部
 
Macaulay
高级会员
Rank: 4


UID 83520
精华 0
积分 709
帖子 438
金钱 426 喜悦币
威望 0
人脉 283
阅读权限 50
注册 2006-11-20
来自 浙
状态 离线
[推荐阅读] 找到个理由灌水
关注...学习
2007-1-26 10:04 AM#10
查看资料  发短消息  QQ  ICQ 状态  顶部
 11  1/2  1  2  > 
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题 | 开通个人空间  


 




Powered by Discuz! 6.1.0  © 2001-2010 Comsenz Inc.
Processed in 0.025183 second(s), 6 queries

(冀ICP备05009913号) 管理员:sadly 邮箱/MSN: sadly@phpx.com QQ:824008(长隐) 清除 Cookies - - Archiver - WAP