[原创]为找房方便 ,将sohu焦点的 rss 改成全文的.解决方案

php中文网
发布: 2016-06-13 12:55:29
原创
1038人浏览过

[原创]为找房方便 ,将sohu焦点的 rss 改成全文的.

本帖最后由 PhpNewnew 于 2012-07-03 07:50:15 编辑 房价貌似快要涨了,俺最近天天加班,俺媳妇来负责找房源,可她那狗屎公司无法上网,只好用ipad 加载rss 离线看,结果狗屎sohu焦点的rss 非全文rss ,为了老婆找房方便,写了点代码,用于生成全文的rss. 希望借此机会,尝试一下代码改善生活的感觉. 不废话吧,直接贴代码了.
<br><?php <br />
header("Content-type: text/html; charset=utf-8");<br>
ini_set("max_excution_time"  ,3600);<br>
$url = "http://sz.focus.cn/common/xml/rss/news/hot.php";<br><br>
$newItemArr = parseItems( $url );<br>
$xmlItemContent = makeRssItemString( $newItemArr ); //重新生成item 内容,将下载内容替换descript.<br><br>
//rss xml 的头尾字符串<br>
$xmlPre = '<br><?xml  version="1.0" encoding="GBK"?><br><?xml-stylesheet  type="text/xsl" href="/common/xml/xsl/rss.xsl" media="all"?><br><?xml-stylesheet  type="text/css" href="/common/xml/css/rss.css" media="all"?><br><br><rss></rss>
xmlns:focus="http://house.focus.cn"<br>
xmlns:F="http://house.focus.cn"<br>
docType="rss"<br>
F:docType="rss"<br>
&gt;<br><channel></channel>
pageIndex=""<br>
pageSize="20"<br>
recordCount=""<br>
F:pageIndex=""<br>
F:pageSize="20"<br>
F:recordCount=""&gt;<br><image><br><title></title>
<br><link>http://sz.focus.cn/newscenter/xwsy.html<br><url>http://images.house.focus.cn/img/newhouselogo.gif</url><br></image><br><title>热点新闻-搜狐焦点网深圳站</title><br><link>http://sz.focus.cn/newscenter/xwsy.html<br><description></description><br><copyright>Copyright 2012, sohu.com Inc., all rights reserved</copyright><br><language>zh-cn</language><br><lastbuilddate>Mon, 02 Jul 2012 21:44:21 +0800</lastbuilddate><br><pubdate>Mon, 02 Jul 2012 21:44:21 +0800</pubdate><br><category>地产综合</category><br><ttl>30</ttl>';<br>
$xmlAppend = '';<br><br><br>
$xmlOutput = $xmlPre . $xmlItemContent . $xmlAppend ;<br>
echo $xmlOutput;<br><br><br>
/**<br>
 * @param $url<br>
 * @return array itemObj<br>
 */<br>
function parseItems( $url )<br>
{<br>
    $xmlObj = simplexml_load_file( $url );<br>
    $items = $xmlObj -&gt; channel -&gt; item;<br><br>
    $resultArr = array();<br><br>
    foreach( $items as  $item ):<br>
        $resultArr []= makeRssItemObj( $item );<br>
    endforeach;<br><br>
    return $resultArr;<br>
}<br><br><br><br>
/**<br>
 * @param $item<br>
 * @return itemObj<br>
 */<br>
function makeRssItemObj( $item )<br>
{<br>
 //   $item-&gt;link = "demo.html";<br>
    $urlContent = fileGetContent( $item-&gt;link );  //如果不支持curl 就用file_get_content 或者socket 连接来实现.<br><br>
    $urlContent = @iconv("gb2312","utf-8",$urlContent);<br><br>
   // $content = iconv("gb2312" , "utf-8" , $content);<br>
    preg_match("/id=\"newscontent\"&gt;([\d\D]+)<div>/iU" , $urlContent , $matchArr);<br><br>
    $item-&gt;description = $matchArr[1]; <div class="clear"></div>
</div>
登录后复制
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号