本人做了一个采集。 在本地测试,可以正常采集。放在服务器上,也可以采集。 但是。目标站,内容更新后,,,服务器上,要过 好几个小时才能采。 (有时要隔一天)而本地,不用等,只要目标站有数据,就可以采到。
感觉就像采数据的时候,网页没有刷新一样。        
是 服务器 问题? 还是程序不够好?(程序上,每次刷新的时候,都是重新载入页面! ,还加了 随机字符),给公司的技术也看过了,都说程序没问题
 我问了空间商,他说要我报错过去, 我怎么报? 请高手中的高手帮忙解决! 到底是什么问题?

解决方案 »

  1.   

    CSDN最忌讳留QQ了。有问题就请在贴子里说。能帮的大家会帮助你的。。
      

  2.   

    if($_GET["action"]=="cai")
    {
    $PageUrl = "http://www.xxxxx.com/?id=".time();
    $Pagecontent = file_get_contents($PageUrl);

    $start = strpos($Pagecontent,"<div class=\"fb_bbs\">");
    $EndHtml = strpos($Pagecontent,"<div class=\"bb_bbs\">");
    $lenHtml = $EndHtml - $start;
    $Pagecontent = substr($Pagecontent,$start,$lenHtml);

    $HtmlAll = "";

    preg_match_all('/<a(.*?)href="(.*?)"(.*?)>(.*?)<\/a>/',$Pagecontent,$UrlList);
    for($i=sizeof($UrlList[2]);$i>=0;$i--){
    $InUrl = "http://www.zhibo8.com".$UrlList[2][$i];
    $TermDay = $_POST["txtdate"];

    //$HtmlAll = $HtmlAll.$InUrl."-----".$TermDay."\r\n";

    if(strstr($InUrl,$TermDay) && strstr($InUrl,"nba"))
    {


    $InContent = file_get_contents($InUrl);

    //$start1 = strpos($InContent,"<div id=\"body\">");
    //$EndHtml1 = strpos($InContent,"<div id=\"footer\">");
    //$lenHtml1 = $EndHtml1 - $start1;
    //$InContent = substr($InContent,$start1,$lenHtml1);

    preg_match('/<title>(.*?)<\/title>/',$InContent,$Title);


    $Cstart = strpos($InContent,"<div class=\"content\">");
    $Cend = strpos($InContent,"<!-- JiaThis Button BEGIN -->");
    $Lcontent = $Cend - $Cstart;
    $Content = substr($InContent,$Cstart,$Lcontent);
      

  3.   

    if($_GET["action"]=="cai")
    {
    $PageUrl = "http://www.zhibo8.com/?id=".time();
    $Pagecontent = file_get_contents($PageUrl);$start = strpos($Pagecontent,"<div class=\"fb_bbs\">");
    $EndHtml = strpos($Pagecontent,"<div class=\"bb_bbs\">");
    $lenHtml = $EndHtml - $start;
    $Pagecontent = substr($Pagecontent,$start,$lenHtml);$HtmlAll = "";preg_match_all('/<a(.*?)href="(.*?)"(.*?)>(.*?)<\/a>/',$Pagecontent,$UrlList);
    for($i=sizeof($UrlList[2]);$i>=0;$i--){
    $InUrl = "http://www.zhibo8.com".$UrlList[2][$i];
    $TermDay = $_POST["txtdate"];//$HtmlAll = $HtmlAll.$InUrl."-----".$TermDay."\r\n";if(strstr($InUrl,$TermDay) && strstr($InUrl,"nba"))
    {
    $InContent = file_get_contents($InUrl);//$start1 = strpos($InContent,"<div id=\"body\">");
    //$EndHtml1 = strpos($InContent,"<div id=\"footer\">");
    //$lenHtml1 = $EndHtml1 - $start1;
    //$InContent = substr($InContent,$start1,$lenHtml1);preg_match('/<title>(.*?)<\/title>/',$InContent,$Title);
    $Cstart = strpos($InContent,"<div class=\"content\">");
    $Cend = strpos($InContent,"<!-- JiaThis Button BEGIN -->");
    $Lcontent = $Cend - $Cstart;
    $Content = substr($InContent,$Cstart,$Lcontent);
      

  4.   

    你服务器是固定IP,人家早把你的IP列入黑名单了
      

  5.   

    对方肯定是把你的ip列入黑名单了,你可以用adsl的连接方式,定时重连网络,这样你反复更换ip,对方服务器就应付不过来了,给你一段定时重连adsl的脚本$i=1;
    while(true)
    {
    sleep(120);
    if(cutNet()){
    sleep(10);
    if(connectNet())
    {
    echo "成功连接 " .$i." 次\r\n";
    }
    else
    {
    echo "未连接 \r\n";
    }
    } else {
    echo "未成功断开连接\r\n"; 
    }
    $i++;
    }
    /**
     * ADSL拨号
     */
    function connectNet($cNum=0)
    {
    exec("rasdial.exe ADSL adsl_name adsl_pwd",$out1,$ars1);
    print_r($out1);
    if (preg_match('/已连接 ADSL/',$out1[3]) or preg_match('/已连接 ADSL/',$out1[4]))
    {
    return true;
    }else{
    return false;
    }}function cutNet()
    {
    if(isConnect()){
    exec("Rasdial ADSL /disconnect",$out1,$ars1);//断线
    if (preg_match('/已完成/',$out1[0]))
    {
    return true;
    }
    else
    {
    return false;
    }
    }
    else
    {
    return true;
    }}function isConnect()
    {
    exec("Rasdial",$out1,$ars1);//断线
    if($out1['0']=='没有连接'){
    echo "没有找到连接\r\n";
    return false;
    }
    return true;
    }
      

  6.   

    服务器固定IP怎么用ADSL?
    用代理吧
      

  7.   

    function isConnect()
    {
        exec("Rasdial",$out1,$ars1);//断线
        if($out1['0']=='没有连接'){
            echo "没有找到连接\r\n";
            return false;
        }
        return true;
    }
      

  8.   

    从描述来看,你的本机和你的服务器,不是在一个地区的吧?我是指省市地区。那么也有可能是CDN导致的,不同的省市运营商,虽然访问同一个域名,但访问的主机和内容会出现不一致的情况,CDN的同步需要时间。想解决这个问题,在你的本地搞个服务器就行了。
      

  9.   


    是CDN导致 的问题  原来  电的速度不怎么快