这是一个创建多进程来协同并发同时抓取数据汇总的示例代码:
<?php
$url_arr = array();
for ($i=0;$i<10;$i++){
$url_arr[] = "www.baidu.com?wd=".$i;
}
echo "开始执行:".date("Y-m-d H:i:s").PHP_EOL;
$_begintime=time();
$workers = array();
for ($i=0;$i<5;$i++){
$process = new swoole_process('getContents',true);
$process->start();
$process->write($i);
$workers[] = $process;
}
//主进程数据结果
foreach ($workers as $process){
echo $process->read();
echo PHP_EOL;
}
$_finishtime=time();
echo "任务全部完成:".date("Y-m-d H:i:s").",总耗时".($_finishtime-$_begintime).PHP_EOL;
function getContents(swoole_process $worker){
$_begintime=time();
$i = $worker->read();
global $url_arr;
// echo "1";
$res1 = execCurl($url_arr[($i*2)]);
$res2 = execCurl($url_arr[($i*2+1)]);
$_finishtime=time();
// $worker->write('Hello');
echo $res1.PHP_EOL.$res2."耗时:".($_finishtime-$_begintime);
}
function execCurl($url){
sleep(rand(1,10));
return "抓取网页 ".$url." 完成,";
}
网友回复
DLNA与UPnP的区别和不同?
苏超自建抢票app,通过先预约再抽签化解高并发抢票?
python如何让给电脑在局域网中伪装成电视接收手机的投屏图片视频播放?
如何结合python+js如何自己的视频编码与加密播放直播?
python如何在电脑上通过局域网将本地视频或m3u8视频投屏电视播放?
腾讯视频爱奇艺优酷vip电影电视剧视频如何通过python绕过vip收费直接观看?
有没有可免费观看全球电视台直播m3u8地址url的合集?
有没有实现观影自由的免vip影视苹果 CMS V10 API的可用url?
python如何实时检测电脑usb插入检测报警?
如何判断真人操作的鼠标移动直线轨迹与机器操作的轨迹?