已掉线,重新登录

首页 > 绿虎论坛 > 建站 > 讨论/求助 (发帖)

标题: 百度的实时推送

作者: @Ta

时间: 2015-04-30

点击: 4641

今天无意登录站长平台发现有权限了,有没有现成的推送源码啊?

我是菜鸟

我已经有了sitemaphttp://sjdang.com/sitemap.xml

也就是说,怎么单独把sitemap里所有链接提取出来呢?

[隐藏样式|查看源码]


『回复列表(15|隐藏机器人聊天)』

1. PHP有操作xml的函数
(/@Ta/2015-04-30 20:52//)

2. @读书顶个鸟用,我看看,多谢蒋兄
(/@Ta/2015-04-30 21:06//)

3. http://www.w3school.com.cn/php/php_xml_dom.asp
(/@Ta/2015-04-30 21:18//)

4. 或者用正则也是可以的
(/@Ta/2015-04-30 21:19//)

5. @c,正则可以,我随便写的 去看看
这里是写成可以点击的连接,居然有95个。TEST
(/@Ta/2015-04-30 21:23//)

6. <? php
   $baidu_ping_url = 'data.zz.baidu.com';
         $get = '/urls?site=sjdang.com&token=MM';
         $port=80;
         if ( ( $io = fsockopen( $baidu_ping_url, $port, $errno, $errstr, 50 ) ) !== false )  {
             $send = "POST $get HTTP/1.1"."rn";
             $send .= 'Accept: */*'."rn";
             $send .= 'Cache-Control: no-cache'."rn";
  
           $send .= 'Host: '.$baidu_ping_url."rn";
           $send .= 'Pragma: no-cache'."rn";
           //$send .= "Referer: http://".$url.$get."rn";
           //$send .= 'User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)'."rn";
            
           $xml = file_get_contents("http://sjdang.com/sitemap.xml");
           foreach($urls as $url){
               $xml .= '<url>';
               $xml .= '<loc><![CDATA['.$url.']]></loc>';
               $xml .= '<lastmod>'.date('Y-m-d').'</lastmod>';
               $xml .= '<changefreq>monthly</changefreq>';
               $xml .= '<priority>0.8</priority>';
               $xml .= '</url>';
           }
           $xml .= '</urlset>';
           $send .= 'Content-Length:'.strlen($xml)."rn";
           $send .= "Connection: Closernrn";
           $send .= $xml."rn";
           fputs ( $io, $send );
           $return = '';
           while ( ! feof ( $io ) )
           {
               $return .= fread ( $io, 4096 );
           }
           return $return;
       }else{
           return false;
       }
   
?>
(/@Ta/2015-04-30 21:57//)

7. @雨伤@读书顶个鸟用,百度出了一个,改了下打开居然语法错误,用七朵云打开的。
(/@Ta/2015-04-30 21:58//)

8. @c,把错误贴出来呗?
(/@Ta/2015-04-30 22:39//)

9. @读书顶个鸟用,Parse error: syntax error, unexpected '$baidu_ping_url' (T_VARIABLE) in/home/xinianbt/public_html/xml.phpon line2   我发现我每次都要语法错误…看来我果真是个小白…
(/@Ta/2015-04-30 22:51//)

10. @读书顶个鸟用,想了下,与其推送它不如加在发起时的时候直接post过去…
(/@Ta/2015-04-30 23:00//)

11. @c
<?php
$url = 'http://sjdang.com/sitemap.xml';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$con = curl_exec($ch);
curl_close($ch);
preg_match_all('/<loc>(.*)<\/loc>/',$con,$result);
$num = count($result[1]);
$i=0;
while($i <$num){
 
echo <<<html
<a href = "{$result[1][$i]}">地址{$i}</a><hr />
html;
$i ++;
}


?>
你参考下
(/@Ta/2015-04-30 23:05//)

12. @c,<?php那问号后有空格
(/@Ta/2015-04-30 23:22//)

13. @雨伤,哦哦,学习了
(/@Ta/2015-04-30 23:28//)

14. @读书顶个鸟用,这也算错误吗…这坑人的语法
(/@Ta/2015-04-30 23:38//)

15. @读书顶个鸟用,我还是潜修下再搞,就说以前为何经常这样…
(/@Ta/2015-04-30 23:50//)

回复需要登录

7月5日 12:18 星期六

本站由hu60wap6驱动

备案号: 京ICP备18041936号-1