def get(self): newsHtmlList = Contents.all().filter("status =", "2").fetch(1) if newsHtmlList: try: r = newsHtmlList[0].rss except: newsHtmlList[0].status = "1" # db.delete(newsHtmlList) logging.error("delete one news ,has no rss") return # ''' # 接下来就是要处理原始材料了。这是第一个版本的剥皮程序。 # 1.找寻所有的<p></p> 之间的内容。 # (根据我的观察,能发布新闻RSS的网站都是大型网站,有优化html代码的习惯。使得新闻html很简化。因此我觉得这个方法有一定的可行性。) # ''' newsHtmlList = Contents.all().filter("rss =", newsHtmlList[0].rss).filter("status =", "2").fetch(20) oldHtmlList = memcache.get("oldhtmllist" + str(newsHtmlList[0].rss.key().id())) if not oldHtmlList: oldHtmlList = Contents.all().filter("rss =", newsHtmlList[0].rss).filter("status >", "2").fetch(10) try: memcache.set("oldhtmllist" + str(newsHtmlList[0].rss.key().id()), oldHtmlList, 3600 * 24 * 3) except Exception, e: pass # content=newsHtmlList[0] # news=skinSubOne(content.content) skinSubTwo(oldHtmlList, newsHtmlList)
def get(self): newsHtmlList=Contents.all().filter('hasContent =',True).filter('hasRealContent =',False).fetch(1) if newsHtmlList: # ''' # 接下来就是要处理原始材料了。这是第一个版本的剥皮程序。 # 1.找寻所有的<p></p> 之间的内容。 # (根据我的观察,能发布新闻RSS的网站都是大型网站,有优化html代码的习惯。使得新闻html很简化。因此我觉得这个方法有一定的可行性。) # ''' newsHtmlList=Contents.all().filter('hasContent =',True).filter('hasRealContent =',False).filter('rss =',newsHtmlList[0].rss).fetch(20) oldHtmlList=Contents.all().filter('hasRealContent =',True).filter('rss =',newsHtmlList[0].rss).order('-datetime').fetch(10) # content=newsHtmlList[0] # news=skinSubOne(content.content) skinSubTwo(oldHtmlList,newsHtmlList)