예제 #1
0
파일: chat.py 프로젝트: jmelloy/sqllogger
    def create_msg_adiumLog(self):
        # Logs of the format:
        # (00:07:25)fetchgreebledonx:Do you know how you replace spaces in a string with nothing?
        # Logs are passed to TXTMessageParser, which returns a list of dicts with
        # timestamp, message_type, message, and sender
        # message_type will be either message or sender, and for now we ignore status

        date = self.filename.split("(")[1].split(")")[0].replace("|", "-")

        try:
            f = open(self.filename, "r")
            data = f.read()
            f.close()

            p = TXTMessageParser()

            p.parse(data)

            for msg in [f for f in p.messages if f["message_type"] in ["message"]]:
                m = Message(
                    msg["message"],
                    self.account,
                    self.contact,
                    msg["sender"],
                    self.service,
                    date + " " + msg["timestamp"],
                )
                m.insert(self.connection)
        except IOError:
            print "Error: %s" % self.filename
예제 #2
0
파일: chat.py 프로젝트: jmelloy/sqllogger
    def create_msg_html(self):
        # Logs of the format:
        # <div class="receive">
        # <span class="timestamp">12:59:43 PM</span>
        # <span class="sender">wordsaboutmehere: </span>
        # <pre class="message">What up?</pre></div>
        # Logs are passed through whole to HTMLMessageParser, which
        # returns a list of dicts with the various values
        # [{'timestamp': '7:58:47 PM', 'message': 'Hmmmm',
        # 'message_type': 'receive', 'sender': 'wordsaboutmehere'}]
        # The message_type will be send, receive, or status
        # For now we ignore status

        # Need to get the date from the filename
        # wordsaboutmehere (2006-11-20).html

        date = self.filename.split("(")[1].split(")")[0].replace("|", "-")

        try:
            f = open(self.filename, "r")
            data = f.read()
            f.close()

            p = HTMLMessageParser()

            p.feed(data)

            for msg in [f for f in p.messages if f["message_type"] in ["send", "receive"]]:
                m = Message(
                    msg["message"],
                    self.account,
                    self.contact,
                    msg["sender"],
                    self.service,
                    date + " " + msg["timestamp"],
                )
                m.insert(self.connection)
        except IOError:
            print "Error: %s" % self.filename