David 10 年之前
父节点
当前提交
0ff140b566
共有 3 个文件被更改,包括 41 次插入30 次删除
  1. 13 0
      db.py
  2. 11 30
      parser.py
  3. 17 0
      source.py

+ 13 - 0
db.py

@@ -0,0 +1,13 @@
+from pymongo import MongoClient
+
+class db():
+    def __init__(self):
+        self.client = MongoClient('localhost', 27017)
+        self.col=self.client.alexis["sources"]
+
+    def sources(self):
+        return [ p for p in self.col.find({"rss":0}) ]
+
+    def rss_sources(self):
+        return [ p for p in self.col.find({"rss":1}) ]
+

+ 11 - 30
parser.py

@@ -7,33 +7,8 @@ import htmlmin
 import feedparser
 from frontpage import FrontPage
 from newspaper import Article
-from pymongo import MongoClient
-
-class db():
-    def __init__(self):
-        self.client = MongoClient('localhost', 27017)
-        self.col=self.client.alexis["sources"]
-
-    def sources(self):
-        return [ p for p in self.col.find({"rss":0}) ]
-
-    def rss_sources(self):
-        return [ p for p in self.col.find({"rss":1}) ]
-
-class Source():
-    URL=""
-    BRAND=""
-    DESCRIPTION=""
-    CATEGORY=0
-    def __init__(self,url,category,lang="en"):
-        s=newspaper.build(url,language=lang,memoize_articles=False) 
-        self.BRAND=s.brand
-        self.URL=url
-        self.DESCRIPTION=s.description
-        self.CATEGORY=category
-
-    def obj(self):
-        return {"url":self.URL, "brand": self.BRAND, "desc": self.DESCRIPTION, "category":self.CATEGORY}
+from db import db
+from source import Source
 
 class LinkList():
     def __init__(self,url,selector=None,rss=False):
@@ -79,10 +54,9 @@ class News():
         print(a.publish_date)
         print(a.summary)
         print(a.keywords)
-        #print(a.text)
+        #print(a.text) #FIXME
         print(a.top_image)
         print(a.movies)
-        print("_#_#_#_#_#_#_")
         print(htmlmin.minify(a.article_html,remove_empty_space=True))
 
     def sanitizeUrl(self,url):
@@ -131,12 +105,19 @@ l=None
 #l=LinkList("https://apps.shareholder.com/rss/rss.aspx?channels=14&companyid=ONE",rss=True)
 #n=News("http://investor.shareholder.com/jpmorganchase/press/releasedetail.cfm?ReleaseID=970074")
 
-l=LinkList("http://www.samsungmobilepress.com/press/pressList.asp")
+#l=LinkList("http://www.samsungmobilepress.com/press/pressList.asp")
+#n=News("http://www.samsungmobilepress.com/press/Samsungs-Connected-Ecosystem-Accelerates-the-Growth-of-the-Gear-S2-Applications?2016-03-22")
+
+#l=LinkList("https://news.starbucks.com/feeds/news")
+#l=LinkList("http://www.techinsider.io/rss",rss=True)
+
+l=LinkList("https://newsroom.uber.com/feed/", rss=True)
 
 if l is not None:
     for a in l.links:
         print(a)
     print(len(l.links))
+    n=News(l.links[0])
 
 sys.exit(1)
 def sanitizeSelector(s):

+ 17 - 0
source.py

@@ -0,0 +1,17 @@
+
+class Source():
+    URL=""
+    BRAND=""
+    DESCRIPTION=""
+    CATEGORY=0
+    def __init__(self,url,category,lang="en"):
+        s=newspaper.build(url,language=lang,memoize_articles=False) 
+        self.BRAND=s.brand
+        self.URL=url
+        self.DESCRIPTION=s.description
+        self.CATEGORY=category
+
+    def obj(self):
+        return {"url":self.URL, "brand": self.BRAND, "desc": self.DESCRIPTION, "category":self.CATEGORY}
+
+