龙听期货论坛's Archiver

C
+
+


 微信: QQ:

龙听 发表于 2017-12-6 11:33

关于我自己这个论坛的RSS制作时出现的问题。

我想把我这个论坛做成RSS的全文输出,因为这个是用的DISCUZ7.2的,在网上找了半天也没有找到能够做成全文的。只能自己做一个。
因为栏目很多,所以我用搜索的方式,把一周的新贴做成RSS全文形式。这是原地址:[url]http://qhlt.cn/search.php?searchid=3&amp[/url];orderby=lastpost&ascdesc=desc&searchsubmit=yes

我在源代码里面找链接地址。正则是这样的:[code]#(?<=<a href="viewthread.php)(.+?)(?=&amp;)#s[/code]


[size=12px] 这里出现了一个问题,就是上面的这个列表每一篇文章前面都是一个小的图标,这个链接地址和文章的链接地址是一样的。我做出的RSS都是一对一对的。  [/size]


[size=12px][code]
<tr>
<td class="folder">
<a href="viewthread.php?tid=6407&highlight=" title="新窗口打开" target="_blank">
<img src="images/default/folder_common.gif" /></a>
</td>
<td class="icon">
</td>
<th class="subject">
<label>

</label>
<a href="viewthread.php?tid=6407&highlight=" target="_blank" > 玲姐说财经:12.4——超级非农周黄金将如何操作</a>
</th>[/code]
[/size]


[size=12px]这是源码截取的地方官 ,我想截取玲姐说财经这一个的链接。[/size]


[size=12px][code]#(?<=<a href="viewthread.php)(.+?)(?=&highlight=" target="_blank")#s[/code]   我想这样截图就能截取一个了,但是实测时在服务器上发现筛选不出来。[/size]


[size=12px]--------------------------------------------------------------------------------------------------------------------------------[/size]


[size=12px]再就是您有这个用正则截源码的编辑软件没有,之前一直用NOTEPAD++ 。最近更新后发现截取不出来了,之前做的没问题的,现在用最新的也截不出来了。真够晕的。[/size]

龙听 发表于 2017-12-6 11:34

[code]
<?php
include "gethtml.php";
$regex_link = '#(?<=<a href="viewthread.php)(.+?)(?=&amp;)#s';
$regex_tit = '#(?<=<title>)(.+?)(?=-)#s';
$regex_con = '#(?<=t_msgfontfix">)(.*?)(?=</div>)#s';
$header='<?xml version="1.0" encoding="gbk"?><rss version="2.0"><channel><title>新帖-期货论坛</title>';
$footer='</channel></rss>';
$html=gethtml('http://qhlt.cn/search.php?searchid=3&orderby=lastpost&ascdesc=desc&searchsubmit=yes');
if(preg_match_all($regex_link, $html, $links)){
  $size=30;
  for($i=0;$i<$size;$i++){
    $link="http://qhlt.cn/viewthread.php".$links[0][$i];
    $content=gethtml($link);
    preg_match($regex_con,$content,$article);
    preg_match($regex_tit,$content,$title);
    $rss.='<item><title>'.$title[0].'</title><link><![CDATA['.$link.']]></link><description><![CDATA['.$article[0].']]

></description></item>';
  }
  file_put_contents('index.xml',$header.$rss.$footer);
}
?>[/code]

这是我在服务器上面的做的文件,麻烦有空帮我看看是哪里出问题了,万分感谢。

页: [1]