国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

87 lines
2.7KB

  1. <?php
  2. /**
  3. * 开始采集指定节点操作
  4. *
  5. * @version $Id: co_gather_start_action.php 1 14:31 2010年7月12日Z tianya $
  6. * @package DedeCMS.Administrator
  7. * @copyright Copyright (c) 2007 - 2019, DesDev, Inc.
  8. * @license http://help.dedecms.com/usersguide/license.html
  9. * @link http://www.dedecms.com
  10. */
  11. require_once(dirname(__FILE__)."/config.php");
  12. CheckPurview('co_PlayNote');
  13. require_once(DEDEINC.'/dedecollection.class.php');
  14. if($totalnum==0)
  15. {
  16. ShowMsg('获取到的网址为零:可能是规则不对或没发现新内容!','javascript:;');
  17. exit();
  18. }
  19. if(!isset($oldstart)) $oldstart = $startdd;
  20. if(empty($notckpic)) $notckpic = 0;
  21. if($totalnum > $startdd+$pagesize) $limitSql = " LIMIT $startdd,$pagesize ";
  22. else $limitSql = " LIMIT $startdd,".($totalnum - $startdd);
  23. if($totalnum - $startdd < 1)
  24. {
  25. if(empty($nid))
  26. {
  27. $dsql->ExecuteNoneQuery("UPDATE `#@__co_note` SET cotime='".time()."'; ");
  28. }
  29. else
  30. {
  31. $dsql->ExecuteNoneQuery("UPDATE `#@__co_note` SET cotime='".time()."' WHERE nid='$nid'; ");
  32. }
  33. ShowMsg('完成当前下载任务!','javascript:;');
  34. exit();
  35. }
  36. $co = new DedeCollection();
  37. if(!empty($nid)) $co->LoadNote($nid);
  38. //没指定采集ID时下载所有内容
  39. if(!empty($nid))
  40. {
  41. $dsql->SetQuery("SELECT aid,nid,url,isdown,litpic FROM `#@__co_htmls` WHERE nid=$nid $limitSql ");
  42. }
  43. else
  44. {
  45. $dsql->SetQuery("SELECT aid,nid,url,isdown,litpic FROM `#@__co_htmls` $limitSql ");
  46. }
  47. $dsql->Execute(99);
  48. $tjnum = $startdd;
  49. while($row = $dsql->GetObject(99))
  50. {
  51. if($row->isdown==0)
  52. {
  53. if(empty($nid)) $co->LoadNote($row->nid);
  54. $co->DownUrl($row->aid,$row->url,$row->litpic);
  55. }
  56. $tjnum++;
  57. if($sptime>0) sleep($sptime);
  58. }
  59. if($totalnum-$oldstart!=0)
  60. {
  61. $tjlen = ceil( (($tjnum-$oldstart)/($totalnum-$oldstart)) * 100 );
  62. $dvlen = $tjlen * 2;
  63. $tjsta = "<div style='width:200;height:15;border:1px solid #898989;text-align:left'><div style='width:$dvlen;height:15;background-color:#829D83'></div></div>";
  64. $tjsta .= "<br/>完成当前任务的:$tjlen %,继续执行任务...";
  65. }
  66. if($tjnum < $totalnum)
  67. {
  68. ShowMsg($tjsta, "co_gather_start_action.php?notckpic=$notckpic&sptime=$sptime&nid=$nid&oldstart=$oldstart&totalnum=$totalnum&startdd=".($startdd+$pagesize)."&pagesize=$pagesize","",0);
  69. exit();
  70. }
  71. else
  72. {
  73. if(empty($nid))
  74. {
  75. $dsql->ExecuteNoneQuery("UPDATE `#@__co_note` SET cotime='".time()."'; ");
  76. }
  77. else
  78. {
  79. $dsql->ExecuteNoneQuery("UPDATE `#@__co_note` SET cotime='".time()."' WHERE nid='$nid'; ");
  80. }
  81. ShowMsg("完成当前下载任务!","javascript:;");
  82. exit();
  83. }