diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..dc42e37
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..914b0b7
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/proNlp1.iml b/.idea/proNlp1.iml
new file mode 100644
index 0000000..6f63a63
--- /dev/null
+++ b/.idea/proNlp1.iml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/daeRun.py b/daeRun.py
deleted file mode 100644
index ad9aecb..0000000
--- a/daeRun.py
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/usr/bin/env python
-
-import sys, time
-from daemon import Daemon
-from infoRet import get_data_rss
-
-
-class MyDaemon(Daemon):
- def run(self):
- while True:
- time.sleep(1)
-
-
-if __name__ == "__main__":
- daemon = MyDaemon('/tmp/daemon-example.pid')
- if len(sys.argv) == 2:
- if 'start' == sys.argv[1]:
- print('Daemon started')
- daemon.start()
- elif 'stop' == sys.argv[1]:
- print('Daemon stopped')
- daemon.stop()
- elif 'restart' == sys.argv[1]:
- print('Daemon restarted')
- daemon.restart()
- else:
- print("Unknown command")
- sys.exit(2)
-
- sys.exit(0)
- else:
- print
- "usage: %s start|stop|restart" % sys.argv[0]
- sys.exit(2)
diff --git a/daemon.py b/daemon.py
index 7aebc51..54748e7 100644
--- a/daemon.py
+++ b/daemon.py
@@ -1,145 +1,35 @@
-"""
-
-import daemon
-from infoRet import get_data_rss
+from threading import Thread, Lock
from time import gmtime, strftime
+from infoRet import get_data_rss
-with daemon.
+class Daemon(Thread):
+ def __init__(self):
+ Thread.__init__(self)
+ self.mutex = Lock()
+ self._quit = False
- currTime = strftime("%H:%M:%S", gmtime())
+ def stopped(self):
+ self.mutex.acquire()
+ val = self._quit
+ self.mutex.release()
+ return val
- if currTime == "19:33:00":
- get_data_rss()
-"""
+ def stop(self):
+ self.mutex.acquire()
+ self._quit = True
+ self.mutex.release()
-#!/usr/bin/env python
-
-import sys, os, time, atexit
-from signal import SIGTERM
+ def run(self):
+ while True:
+ if str(strftime("%H:%M:%S", gmtime())) == '05:00:00':
+ get_data_rss()
-class Daemon:
- """
- A generic daemon class.
+def main_fct():
+ t = Daemon()
+ t.start()
- Usage: subclass the Daemon class and override the run() method
- """
- def __init__(self, pidfile, stdin='/dev/null', stdout='/dev/null', stderr='/dev/null'):
- self.stdin = stdin
- self.stdout = stdout
- self.stderr = stderr
- self.pidfile = pidfile
- def daemonize(self):
- """
- do the UNIX double-fork magic, see Stevens' "Advanced
- Programming in the UNIX Environment" for details (ISBN 0201563177)
- http://www.erlenstar.demon.co.uk/unix/faq_2.html#SEC16
- """
- try:
- pid = os.fork()
- if pid > 0:
- # exit first parent
- sys.exit(0)
- except OSError as e:
- sys.stderr.write("fork #1 failed: %d (%s)\n" % (e.errno, e.strerror))
- sys.exit(1)
-
- # decouple from parent environment
- os.chdir("/")
- os.setsid()
- os.umask(0)
-
- # do second fork
- try:
- pid = os.fork()
- if pid > 0:
- # exit from second parent
- sys.exit(0)
- except OSError as e:
- sys.stderr.write("fork #2 failed: %d (%s)\n" % (e.errno, e.strerror))
- sys.exit(1)
-
- # redirect standard file descriptors
- sys.stdout.flush()
- sys.stderr.flush()
- si = open(self.stdin, 'r')
- so = open(self.stdout, 'a+')
- se = open(self.stderr, 'a+')
- os.dup2(si.fileno(), sys.stdin.fileno())
- os.dup2(so.fileno(), sys.stdout.fileno())
- os.dup2(se.fileno(), sys.stderr.fileno())
-
- # write pidfile
- atexit.register(self.delpid)
- pid = str(os.getpid())
- open(self.pidfile, 'w+').write("%s\n" % pid)
-
- def delpid(self):
- os.remove(self.pidfile)
-
- def start(self):
- """
- Start the daemon
- """
- # Check for a pidfile to see if the daemon already runs
- try:
- pf = open(self.pidfile, 'r')
- pid = int(pf.read().strip())
- pf.close()
- except IOError:
- pid = None
-
- if pid:
- message = "pidfile %s already exist. Daemon already running?\n"
- sys.stderr.write(message % self.pidfile)
- sys.exit(1)
-
- # Start the daemon
- self.daemonize()
- self.run()
-
- def stop(self):
- """
- Stop the daemon
- """
- # Get the pid from the pidfile
- try:
- pf = open(self.pidfile, 'r')
- pid = int(pf.read().strip())
- pf.close()
- except IOError:
- pid = None
-
- if not pid:
- message = "pidfile %s does not exist. Daemon not running?\n"
- sys.stderr.write(message % self.pidfile)
- return # not an error in a restart
-
- # Try killing the daemon process
- try:
- while 1:
- os.kill(pid, SIGTERM)
- time.sleep(0.1)
- except OSError as err:
- err = str(err)
- if err.find("No such process") > 0:
- if os.path.exists(self.pidfile):
- os.remove(self.pidfile)
- else:
- print(str(err))
- sys.exit(1)
-
- def restart(self):
- """
- Restart the daemon
- """
- self.stop()
- self.start()
-
- def run(self):
- """
- You should override this method when you subclass Daemon. It will be called after the process has been
- daemonized by start() or restart().
- """
\ No newline at end of file
+if __name__ == "__main__":
+ main_fct()
\ No newline at end of file
diff --git a/infoRet.py b/infoRet.py
index c4067ef..bbd4465 100644
--- a/infoRet.py
+++ b/infoRet.py
@@ -6,9 +6,12 @@ def get_data_rss():
datUniver = fp.parse('http://www.eluniversal.com.mx/seccion/1/rss.xml')
datJorn = fp.parse('http://www.jornada.unam.mx/rss/politica.xml?v=1')
+ datCnn = fp.parse('http://expansion.mx/rss/politica')
file = open('rss_univ.txt', 'a')
+ file.write(str(datCnn['Date']) + ';\n')
+ file.write(str(datCnn) + ';\n')
file.write(str(datUniver.headers['Date']) + ';\n')
file.write(str(datUniver) + ';\n')
file.write(str(datJorn.headers['Date']) + ';\n')
@@ -16,6 +19,8 @@ def get_data_rss():
file.close()
+get_data_rss()
+
# SOME COMMANDS OF FEEDPARSER
# print(datUniver['feed']['link'] + '\n')