Matthew Kaney at ITP

Final Project Prologue: Harvesting Data

Reading and Writing Electronic Text


273

For my final project, I needed all of the Google chats my husband Caleb and I have ever sent each other. The next post gets into how and why I made poetry with that text. This post just covers how I got the data in the first place.

Collecting the Data

I first tried to export everything using Google Takeout, Google’s cross-product data export tool. I’ve used it successfully in the past, but for whatever reason, it ran into trouble this time, and gave me a file with large swaths of missing messages and bad data. While trying to diagnose that problem, I found another solution: this Google Apps Script for automatically scraping chats out of Gmail and populating a Google Spreadsheet. Google Apps Scripts can only run for so long (and will give you an error if you try sending too many requests to Google’s servers), so I modified the script to allow me to only request a range of messages, manually re-running the script several times over the course of a couple hours.

I set up the script so that the first column of my spreadsheet is the message thread ID number (counting up chronologically as you move back in time—useful for keeping track of which messages were already requested), the second column is the date, the third and fourth columns are sender and recipient, and the last column contains the full text of the message. The end result looked like this:

Chat Spreadsheet

With my spreadsheet, I manually deleted messages with people other than Caleb, combined the messages sent from both my personal and NYU accounts, and exported all the data as a CSV.

Parsing the Data

Unfortunately, six years is a long time for Google to maintain consistent data formatting, particularly while completely overhauling their instant messaging products. This means that the new messages were formatted correctly when my script scraped them, like so:

2/27/2015 Matthew Caleb Any good burrito places in Manhattan?

But scraping older messages gave me something like this:

8/14/2011 Caleb Matthew Caleb: Toaster: black, white, or red?
me: Hey. Do you still need toaster color input?
Caleb: Yes
Caleb: If you could.
me: How about black?
Caleb: Sure
me: Sorry I didn't get back to you earlier. I went kind of sleep for a couple of hours.

…with the body of the “message” saved as: <span><span style="font-weight:bold">Caleb</span>: Toaster: black, white, or red?</span><br><span><span style="font-weight:bold">me</span>: Hey. Do you still need toaster color input?</span>, and so on.

In a few cases, for whatever reason, times were included in the message body as well:

7/26/2010 Caleb Matthew
12:27 PM me: Are you there?
 Caleb: yes
12:28 PM me: Cool. I'm having lunch now.
 Caleb: cool
  i'm trying to decide what to do for lunch
 me: Ah.
12:29 PM Caleb: how has your day been?
12:30 PM me: Pretty good. Finished up web ads, pending revisions.
 Caleb: cool

Obviously, this meant that the sender, recipient, and timestamp information associated with the chat thread was not useful. Instead, I had to use Beautiful Soup to parse out these HTML-formatted chat threads and extract the relevant data. The resulting data was a list of chat messages, each stored of a list with the format: [timestamp, recipientName, messageText]. Because all of this HTML parsing took several minutes, I only did it once, and then I used the Pickle module to store my clean data to a file.

After a lot of tinkering, this is what I came up with:

import csv
from dateutil.parser import *
from bs4 import BeautifulSoup
import pickle

# Given a row of the CSV file (which may or may not contain
# multiple threaded messages), return a list individual chat messages.
def formatRow(input):
    rows = []
    
    # The main CSV timestamp will be the default timestamp for all messages
    timestamp = parse(input[0])
    
    # The main sender will be the default sender, unless others are specified.
    # (Because GChat formats the usernames differently at different points,
    # this simple string search is enough of a check)
    if 'caleb' in input[1].lower():
        sender = 'caleb'
    elif 'matthew' in input[1].lower():
        sender = 'matthew'
    
    # Now, pull the text in the message or thread
    threadText = input[3]
    
    # Check for empty "messages"
    if str(threadText) == '':
        return []
    
    # Beautiful soup doesn't like weak breaks, so remove them
    threadText = threadText.replace('<wbr>', '')
    
    # Parse the thread text as HTML. This will both remove HTML-encoded
    # special characters and allow us to tear apart old threads that were
    # all saved in the same message.
    thread = BeautifulSoup(input[3])
    
    # I don't want to read links in my poetry, so remove them.
    for link in thread.findAll('a'):
        link.extract()
    
    for msg in thread.html.body.children:
        if msg.name == 'p':
            # If the text is stored in a <p> tag, then it's a simple message.
            rows.append([timestamp, sender, unicode(msg.contents[0])])
        else:
            # If the text is organized by <div> tags, then it has built-in
            # timestamps.
            if msg.name == 'div':
                # Update the base timestamp with this new hour and minute
                if len(msg.contents[0].contents[0].strip()) > 0:
                    newTimestamp = parse(msg.contents[0].contents[0].strip())
                    timestamp = timestamp.replace(hour=newTimestamp.hour,
                                                  minute=newTimestamp.minute)
                msg = msg.contents[1].span
            
            # If the text is contained in a span tag, then it maybe 
            # has the sender's name in bold before the message.
            if msg.name == 'span':
                # Update the message
                if msg.contents[0].name == 'span':
                    if 'caleb' in msg.span.contents[0].lower():
                        sender = 'caleb'
                    elif 'me' in msg.span.contents[0].lower():
                        sender = 'matthew'
                    content = unicode(msg.contents[1])
                else:
                    content = unicode(msg.contents[0])
                
                # Remove the colon if present
                if content[:2] == ': ':
                    content = content[2:]
                
                # Append a new row
                if len(content) > 0:
                    rows.append([timestamp, sender, content])
    return rows

#---------------------- Main Logic ------------------------

# This is the list of data that we'll want in the future.
rows = []

with open('source/RawChatArchive.csv', 'rb') as csvfile:
    messageList = csv.reader(csvfile)
    for row in messageList:
        formatted = formatRow(row)
        rows += formatted        

# The pickle module allows us to simply save a Python data structure in a
# file, no manual parsing or formatting necessary.
pickle.dump(rows, open("chatlog.p", "wb"))

Comments

  1. ffxiv power leveling on November 21, 2015 at 10:17 pm

    ffxiv power leveling

    it is very helpful for me searching on this website!

  2. fifa coins on November 27, 2015 at 12:59 am

    fifa coins

    I mean it!

  3. nfl 16 coins ios buy on December 30, 2015 at 11:41 pm

    nfl 16 coins ios buy

    Where were we?

  4. fifa 16 points on December 31, 2015 at 9:56 am

    fifa 16 points

    You’re so cute.

  5. buy MUT Coins on January 4, 2016 at 6:23 pm

    buy MUT Coins

    this is a very helpful game web site!

  6. Blade & Soul Gold on February 2, 2016 at 10:25 pm

    Blade & Soul Gold

    nice going!

  7. Albion Online Silver on February 2, 2016 at 10:25 pm

    Albion Online Silver

    Now you tell me that she was not a knockout !

  8. MS Mesos on February 2, 2016 at 10:26 pm

    MS Mesos

    The youre very professional .

  9. Blade & Soul Power leveling on February 2, 2016 at 10:26 pm

    Blade & Soul Power leveling

    You always love it.

  10. Buy Blade And Soul Gold on February 2, 2016 at 10:26 pm

    Buy Blade And Soul Gold

    this site can help me to locate good quality suggestions!

  11. Albion Online Power Leveling on February 2, 2016 at 10:26 pm

    Albion Online Power Leveling

    Too bad we have to return them .

  12. Blade And Soul Gold on February 2, 2016 at 10:27 pm

    Blade And Soul Gold

    How come you are working here?

  13. Cheap BNS Gold on February 2, 2016 at 10:27 pm

    Cheap BNS Gold

    Good !|Cool! I love your this bolg.

  14. Cheap BNS Gold on February 2, 2016 at 10:27 pm

    Cheap BNS Gold

    Even call it.

  15. Cheap BNS Gold on February 2, 2016 at 10:27 pm

    Cheap BNS Gold

    Why don’t we give this a try?

  16. Cheap BNS Gold on February 2, 2016 at 10:28 pm

    Cheap BNS Gold

    this is a very helpful website!

  17. Cheap Albion Online Gold on February 2, 2016 at 10:28 pm

    Cheap Albion Online Gold

    Why do not we try this ?

  18. MS Mesos on February 2, 2016 at 10:28 pm

    MS Mesos

    Do you have a good sense of humor .

  19. Blade & Soul Items on February 2, 2016 at 10:28 pm

    Blade & Soul Items

    Come on, cut it out!

  20. Albion Online Gold on February 2, 2016 at 10:29 pm

    Albion Online Gold

    You ‘re so smart.

  21. Blade-Soul on February 2, 2016 at 10:29 pm

    Blade-Soul

    Your company is very impressive .

  22. MapleStory Mesos on February 2, 2016 at 10:29 pm

    MapleStory Mesos

    You ‘re so smart.

  23. Albion Online Silver on February 2, 2016 at 10:29 pm

    Albion Online Silver

    You’re very professional.

  24. Buy Blade And Soul Gold on February 2, 2016 at 10:30 pm

    Buy Blade And Soul Gold

    What is that guy?

  25. Buy Blade And Soul Gold on February 2, 2016 at 10:30 pm

    Buy Blade And Soul Gold

    If he shows up, we stick with him.

  26. Buy Blade And Soul Gold on February 2, 2016 at 10:30 pm

    Buy Blade And Soul Gold

    were so proud of you.

  27. Albion Online Power Leveling on February 2, 2016 at 10:30 pm

    Albion Online Power Leveling

    this website can help me personally to find good quality suggestions!

  28. Cheap BNS Gold on February 2, 2016 at 10:31 pm

    Cheap BNS Gold

    Nobody can do a better job than you.

  29. Cheap BNS Gold on February 2, 2016 at 10:31 pm

    Cheap BNS Gold

    You have a good taste.

  30. Buy MapleStory Mesos on February 2, 2016 at 10:31 pm

    Buy MapleStory Mesos

    You always love it.

  31. Cheap BNS Gold on February 2, 2016 at 10:31 pm

    Cheap BNS Gold

    No one can do it better than you.

  32. Cheap MapleStory Mesos on February 2, 2016 at 10:32 pm

    Cheap MapleStory Mesos

    I’ll fix it!

  33. buy Albion Online Gold on February 2, 2016 at 10:32 pm

    buy Albion Online Gold

    That’s not the issue.

  34. Albion Online Power Leveling on February 2, 2016 at 10:32 pm

    Albion Online Power Leveling

    You are the savior of my life.

  35. Buy Blade And Soul Gold on February 2, 2016 at 10:32 pm

    Buy Blade And Soul Gold

    Proud of you .

  36. Cheap Blade And Soul Gold on February 2, 2016 at 10:33 pm

    Cheap Blade And Soul Gold

    You fall for it every time.

  37. Buy Blade And Soul Gold on February 2, 2016 at 10:33 pm

    Buy Blade And Soul Gold

    You did it !

  38. Buy Albion Online Gold on February 2, 2016 at 10:33 pm

    Buy Albion Online Gold

    My way or the highway.

  39. Blade & Soul Items on February 2, 2016 at 10:33 pm

    Blade & Soul Items

    I respect your work.

  40. Albion Online Silver on February 2, 2016 at 10:34 pm

    Albion Online Silver

    My way or the highway.

  41. Blade And Soul Gold on February 2, 2016 at 10:34 pm

    Blade And Soul Gold

    Today looks great .

  42. Cheap Blade And Soul Gold on February 2, 2016 at 10:34 pm

    Cheap Blade And Soul Gold

    You are nothing like us .

  43. Albion Online Gold on February 2, 2016 at 10:34 pm

    Albion Online Gold

    Too bad we have to return them .

  44. Cheap BNS Gold on February 2, 2016 at 10:35 pm

    Cheap BNS Gold

    You’re so smart.

  45. Cheap Blade And Soul Gold on February 2, 2016 at 10:35 pm

    Cheap Blade And Soul Gold

    I was be there for you.

  46. Buy Blade And Soul Gold on February 2, 2016 at 10:35 pm

    Buy Blade And Soul Gold

    No one can do it better than you.

  47. Blade & Soul Items on February 2, 2016 at 10:35 pm

    Blade & Soul Items

    it’s a excellent weblog and that i enjoy it very much!

  48. buy Albion Online Gold on February 2, 2016 at 10:36 pm

    buy Albion Online Gold

    Too bad we have to return them .

  49. Cheap Blade And Soul Gold on February 2, 2016 at 10:36 pm

    Cheap Blade And Soul Gold

    nice going!

  50. Blade & Soul Power leveling on February 2, 2016 at 10:36 pm

    Blade & Soul Power leveling

    I was thinking if after work we could grab a cup of coffee

  51. Blade & Soul Gold on February 2, 2016 at 10:36 pm

    Blade & Soul Gold

    it’s a very good weblog and that i enjoy it very much!

  52. Albion Online Gold on February 2, 2016 at 10:37 pm

    Albion Online Gold

    Call it even.

  53. Cheap Albion Online Gold on February 2, 2016 at 10:37 pm

    Cheap Albion Online Gold

    I have no idea what you have said

  54. MapleStory Mesos on February 2, 2016 at 10:37 pm

    MapleStory Mesos

    No one can do it better than you.

  55. Cheap MapleStory Mesos on February 2, 2016 at 10:37 pm

    Cheap MapleStory Mesos

    What is with that guy?

  56. buy Albion Online Gold on February 2, 2016 at 10:38 pm

    buy Albion Online Gold

    I don’t have the slightest idea

  57. Albion Online Silver on February 2, 2016 at 10:38 pm

    Albion Online Silver

    be cool!

  58. Cheap Albion Online Gold on February 2, 2016 at 10:38 pm

    Cheap Albion Online Gold

    youre looking sharp!

  59. Buy MapleStory Mesos on February 2, 2016 at 10:38 pm

    Buy MapleStory Mesos

    Proud of you .

  60. Blade And Soul Items on February 2, 2016 at 10:39 pm

    Blade And Soul Items

    Take my word for it.

  61. Buy Blade And Soul Gold on February 2, 2016 at 10:39 pm

    Buy Blade And Soul Gold

    Do not rush me.

  62. Buy Albion Online Gold on February 2, 2016 at 10:39 pm

    Buy Albion Online Gold

    youre really talented.

  63. Albion Online Silver on February 2, 2016 at 10:39 pm

    Albion Online Silver

    I let myself become a fool .

  64. Buy Blade And Soul Gold on February 2, 2016 at 10:40 pm

    Buy Blade And Soul Gold

    Come on, Stop!

  65. Buy Albion Online Gold on February 2, 2016 at 10:40 pm

    Buy Albion Online Gold

    Do not push me.

  66. MapleStory Mesos on February 2, 2016 at 10:40 pm

    MapleStory Mesos

    I will be there for you.

  67. Blade & Soul Power leveling on February 2, 2016 at 10:41 pm

    Blade & Soul Power leveling

    You have a good taste.

  68. Buy BNS Gold on February 2, 2016 at 10:41 pm

    Buy BNS Gold

    I will be there for you.

  69. Blade And Soul Items on February 2, 2016 at 10:41 pm

    Blade And Soul Items

    What if I had the guts to quit my job.

  70. Albion Online Silver on February 2, 2016 at 10:41 pm

    Albion Online Silver

    I have no idea what you have said

  71. Cheap Blade And Soul Gold on February 2, 2016 at 10:42 pm

    Cheap Blade And Soul Gold

    I respect your work.

  72. Albion Online Silver on February 2, 2016 at 10:42 pm

    Albion Online Silver

    I will be there for you.

  73. Buy Blade And Soul Gold on February 2, 2016 at 10:42 pm

    Buy Blade And Soul Gold

    I was be there for you.

  74. Buy Blade And Soul Gold on February 2, 2016 at 10:42 pm

    Buy Blade And Soul Gold

    I do not have a clue !

  75. Blade & Soul Items on February 2, 2016 at 10:43 pm

    Blade & Soul Items

    Now you tell me she’s not a knock-out!

  76. Blade And Soul Gold on February 2, 2016 at 10:43 pm

    Blade And Soul Gold

    I mean it!

  77. Blade And Soul Items on February 2, 2016 at 10:43 pm

    Blade And Soul Items

    I don’t have the slightest idea

  78. Albion Online Power Leveling on February 2, 2016 at 10:43 pm

    Albion Online Power Leveling

    How do you work here ?

  79. Blade & Soul Gold on February 2, 2016 at 10:44 pm

    Blade & Soul Gold

    The youre really talented .

  80. Albion Online Silver on February 2, 2016 at 10:44 pm

    Albion Online Silver

    I think I should give it a shot!

  81. Cheap Blade And Soul Gold on February 2, 2016 at 10:44 pm

    Cheap Blade And Soul Gold

    Too bad we must return them.

  82. Buy Blade And Soul Gold on February 2, 2016 at 10:44 pm

    Buy Blade And Soul Gold

    You have a good taste.

  83. MS Mesos on February 2, 2016 at 10:45 pm

    MS Mesos

    You are nothing like us .

  84. BNS Gold on February 2, 2016 at 10:45 pm

    BNS Gold

    I have no idea what you have said

  85. Albion Online Power Leveling on February 2, 2016 at 10:45 pm

    Albion Online Power Leveling

    I will be there for you.

  86. Albion Online Power Leveling on February 2, 2016 at 10:46 pm

    Albion Online Power Leveling

    You’re very eloquent.

  87. Albion Online Silver on February 2, 2016 at 10:46 pm

    Albion Online Silver

    hi!this is extremely good website!

  88. Albion Online Gold on February 2, 2016 at 10:46 pm

    Albion Online Gold

    That’s not the issue.

  89. Blade & Soul Gold on February 2, 2016 at 10:46 pm

    Blade & Soul Gold

    My way or the highway.

  90. Blade & Soul Power leveling on February 2, 2016 at 10:47 pm

    Blade & Soul Power leveling

    Call it even.

  91. Cheap BNS Gold on February 2, 2016 at 10:47 pm

    Cheap BNS Gold

    were so proud of you.

  92. MS Mesos on February 2, 2016 at 10:47 pm

    MS Mesos

    Im very pleased with your work.

  93. Albion Online Silver on February 2, 2016 at 10:47 pm

    Albion Online Silver

    this can be a very useful web site!

  94. Cheap BNS Gold on February 2, 2016 at 10:48 pm

    Cheap BNS Gold

    Take my word for it.

  95. Blade & Soul Power leveling on February 2, 2016 at 10:48 pm

    Blade & Soul Power leveling

    No one can do it better than you.

  96. Albion Online Power Leveling on February 2, 2016 at 10:48 pm

    Albion Online Power Leveling

    You did a good job .

  97. Blade And Soul Gold on February 2, 2016 at 10:48 pm

    Blade And Soul Gold

    You are the savior of my life.

  98. Blade & Soul Power leveling on February 2, 2016 at 10:49 pm

    Blade & Soul Power leveling

    Thank you for your helping hand.

  99. Cheap Albion Online Gold on February 2, 2016 at 10:49 pm

    Cheap Albion Online Gold

    Proud of you .

  100. Blade & Soul Gold on February 2, 2016 at 10:49 pm

    Blade & Soul Gold

    Not that I know of.

  101. buy Albion Online Gold on February 2, 2016 at 10:49 pm

    buy Albion Online Gold

    Do you have a good sense of humor .

  102. Blade And Soul Gold on February 2, 2016 at 10:50 pm

    Blade And Soul Gold

    Why do not we try this ?

  103. Blade And Soul news on February 2, 2016 at 10:50 pm

    Blade And Soul news

    Too bad we must return them.

  104. Blade & Soul Items on February 2, 2016 at 10:50 pm

    Blade & Soul Items

    The youre really talented .

  105. Blade-Soul.com on February 2, 2016 at 10:50 pm

    Blade-Soul.com

    Now you tell me she’s not a knock-out!

  106. Cheap Albion Online Gold on February 2, 2016 at 10:51 pm

    Cheap Albion Online Gold

    Even call it.

  107. Buy Blade And Soul Gold on February 2, 2016 at 10:51 pm

    Buy Blade And Soul Gold

    You are so cute.

  108. Buy Blade And Soul Gold on February 2, 2016 at 10:51 pm

    Buy Blade And Soul Gold

    youre looking sharp!

  109. Blade & Soul Items on February 2, 2016 at 10:51 pm

    Blade & Soul Items

    What is that guy?

  110. Buy Blade And Soul Gold on February 2, 2016 at 10:52 pm

    Buy Blade And Soul Gold

    Not that I know of.

  111. MapleStory Mesos on February 2, 2016 at 10:52 pm

    MapleStory Mesos

    be cool!

  112. Buy Blade And Soul Gold on February 2, 2016 at 10:52 pm

    Buy Blade And Soul Gold

    Good !|Cool! I love your this bolg.

  113. Albion Online Power Leveling on February 2, 2016 at 10:52 pm

    Albion Online Power Leveling

    youre really talented.

  114. MapleStory Mesos on February 2, 2016 at 10:53 pm

    MapleStory Mesos

    I’m all yours!

  115. buy Albion Online Gold on February 2, 2016 at 10:53 pm

    buy Albion Online Gold

    Take my word .

  116. Blade And Soulleveling on February 2, 2016 at 10:53 pm

    Blade And Soulleveling

    I respect your work.

  117. buy Albion Online Gold on February 2, 2016 at 10:53 pm

    buy Albion Online Gold

    Nobody can do a better job than you.

  118. Blade-Soul on February 2, 2016 at 10:54 pm

    Blade-Soul

    How come you are working here?

  119. Buy Blade And Soul Gold on February 2, 2016 at 10:54 pm

    Buy Blade And Soul Gold

    Call it even.

  120. Albion Online Gold on February 2, 2016 at 10:54 pm

    Albion Online Gold

    The youre very professional .

  121. Buy Blade And Soul Gold on February 2, 2016 at 10:54 pm

    Buy Blade And Soul Gold

    That’s not the point.

  122. buy Albion Online Gold on February 2, 2016 at 10:55 pm

    buy Albion Online Gold

    were so proud of you.

  123. Buy BNS Gold on February 2, 2016 at 10:55 pm

    Buy BNS Gold

    I made a fool of myself.

  124. Blade And Soul News on February 2, 2016 at 10:55 pm

    Blade And Soul News

    You’re very eloquent.

  125. Buy Blade And Soul Gold on February 2, 2016 at 10:55 pm

    Buy Blade And Soul Gold

    I don’t know

  126. Cheap Albion Online Gold on February 2, 2016 at 10:56 pm

    Cheap Albion Online Gold

    What if I had the guts to quit my job.

  127. Cheap Blade And Soul Gold on February 2, 2016 at 10:56 pm

    Cheap Blade And Soul Gold

    Even call it.

  128. Buy Blade And Soul Gold on February 2, 2016 at 10:56 pm

    Buy Blade And Soul Gold

    I’m all yours!

  129. buy Albion Online Gold on February 2, 2016 at 10:56 pm

    buy Albion Online Gold

    How come you are working here?

  130. Albion Online Power Leveling on February 2, 2016 at 10:57 pm

    Albion Online Power Leveling

    You ‘re so smart.

  131. Albion Online Silver on February 2, 2016 at 10:57 pm

    Albion Online Silver

    I’m all yours!

  132. Blade & Soul Power leveling on February 2, 2016 at 10:57 pm

    Blade & Soul Power leveling

    You did a good job .

  133. Cheap MapleStory Mesos on February 2, 2016 at 10:57 pm

    Cheap MapleStory Mesos

    Now you tell me that she was not a knockout !

  134. Cheap Albion Online Gold on February 2, 2016 at 10:58 pm

    Cheap Albion Online Gold

    Come on, cut it out!

  135. Cheap BNS Gold on February 2, 2016 at 10:58 pm

    Cheap BNS Gold

    I do not know

  136. Blade & Soul Power leveling on February 2, 2016 at 10:58 pm

    Blade & Soul Power leveling

    You ‘re so smart.

  137. Buy Albion Online Gold on February 3, 2016 at 9:08 pm

    Buy Albion Online Gold

    How do you work here ?

  138. buy Albion Online Gold on February 3, 2016 at 9:09 pm

    buy Albion Online Gold

    You have a good taste.

  139. Buy Blade And Soul Gold on February 3, 2016 at 9:09 pm

    Buy Blade And Soul Gold

    Im very pleased with your work.

  140. Cheap BNS Gold on February 3, 2016 at 9:09 pm

    Cheap BNS Gold

    If I have the guts to quit my job .

  141. Cheap Blade And Soul Gold on February 3, 2016 at 9:09 pm

    Cheap Blade And Soul Gold

    What is that guy?

  142. Cheap Albion Online Gold on February 3, 2016 at 9:10 pm

    Cheap Albion Online Gold

    You always love it.

  143. Blade And Soul Items on February 3, 2016 at 9:10 pm

    Blade And Soul Items

    You always love it.

  144. Blade And Soul Gold on February 3, 2016 at 9:10 pm

    Blade And Soul Gold

    You have a good taste.

  145. Cheap Albion Online Gold on February 3, 2016 at 9:10 pm

    Cheap Albion Online Gold

    this can be a very helpful website!

  146. Albion Online Silver on February 3, 2016 at 9:11 pm

    Albion Online Silver

    I was be there for you.

  147. Cheap Blade And Soul Gold on February 3, 2016 at 9:11 pm

    Cheap Blade And Soul Gold

    Why do not we try this ?

  148. Cheap Albion Online Gold on February 3, 2016 at 9:11 pm

    Cheap Albion Online Gold

    Do not push me.

  149. buy Albion Online Gold on February 3, 2016 at 9:11 pm

    buy Albion Online Gold

    I was wondering if after work we could grab a cup of coffee

  150. Buy BNS Gold on February 3, 2016 at 9:12 pm

    Buy BNS Gold

    be cool!

  151. Blade And Soul Gold on February 3, 2016 at 9:12 pm

    Blade And Soul Gold

    Do not rush me.

  152. Albion Online Silver on February 3, 2016 at 9:12 pm

    Albion Online Silver

    You always love it.

  153. buy Albion Online Gold on February 3, 2016 at 9:12 pm

    buy Albion Online Gold

    No one can do it better than you.

  154. Cheap Blade And Soul Gold on February 3, 2016 at 9:13 pm

    Cheap Blade And Soul Gold

    I’m all yours!

  155. Albion Online Silver on February 3, 2016 at 9:13 pm

    Albion Online Silver

    You always know the right thing to say.

  156. Albion Online Gold on February 3, 2016 at 9:13 pm

    Albion Online Gold

    How come you are working here?

  157. Albion?Online?Silver on February 3, 2016 at 9:13 pm

    Albion?Online?Silver

    Leave me alone !

  158. Albion Online Silver on February 3, 2016 at 9:14 pm

    Albion Online Silver

    You are looking sharp !

  159. Albion Online Items on February 3, 2016 at 9:14 pm

    Albion Online Items

    Now you tell me that she was not a knockout !

  160. Cheap MapleStory Mesos on February 3, 2016 at 9:14 pm

    Cheap MapleStory Mesos

    You always know the right thing to say.

  161. Cheap MapleStory Mesos on February 3, 2016 at 9:14 pm

    Cheap MapleStory Mesos

    Now you tell me she’s not a knock-out!

  162. Cheap BNS Gold on February 3, 2016 at 9:15 pm

    Cheap BNS Gold

    I mean it!

  163. Cheap Blade And Soul Gold on February 3, 2016 at 9:15 pm

    Cheap Blade And Soul Gold

    The youre very eloquent .

  164. Cheap Albion Online Gold on February 3, 2016 at 9:15 pm

    Cheap Albion Online Gold

    You bet !

  165. Albion Online Power Leveling on February 3, 2016 at 9:15 pm

    Albion Online Power Leveling

    The youre very eloquent .

  166. Blade & Soul Items on February 3, 2016 at 9:16 pm

    Blade & Soul Items

    I’ll fix it!

  167. Cheap Blade And Soul Gold on February 3, 2016 at 9:16 pm

    Cheap Blade And Soul Gold

    You are looking sharp !

  168. Albion Online Silver on February 3, 2016 at 9:16 pm

    Albion Online Silver

    No one can do it better than you.

  169. Cheap BNS Gold on February 3, 2016 at 9:16 pm

    Cheap BNS Gold

    You are so cute.

  170. Cheap BNS Gold on February 3, 2016 at 9:17 pm

    Cheap BNS Gold

    You started it !

  171. Buy Albion Online Gold on February 3, 2016 at 9:17 pm

    Buy Albion Online Gold

    nice going!

  172. Blade & Soul Power leveling on February 3, 2016 at 9:17 pm

    Blade & Soul Power leveling

    Be good!

  173. Albion Online Silver on February 3, 2016 at 9:17 pm

    Albion Online Silver

    Call it even.

  174. Buy Blade And Soul Gold on February 3, 2016 at 9:18 pm

    Buy Blade And Soul Gold

    this can be a very useful web site!

  175. Albion Online Power Leveling on February 3, 2016 at 9:18 pm

    Albion Online Power Leveling

    I respect your work.

  176. Albion Online Gold on February 3, 2016 at 9:18 pm

    Albion Online Gold

    This is really a nice place.

  177. buy Albion Online Gold on February 3, 2016 at 9:18 pm

    buy Albion Online Gold

    Your company is very impressive .

  178. Albion Online Gold on February 3, 2016 at 9:19 pm

    Albion Online Gold

    The youre very eloquent .

  179. Cheap BNS Gold on February 3, 2016 at 9:19 pm

    Cheap BNS Gold

    That’s not the issue.

  180. Albion Online Silver on February 3, 2016 at 9:19 pm

    Albion Online Silver

    Today looks great .

  181. Cheap Albion Online Gold on February 3, 2016 at 9:19 pm

    Cheap Albion Online Gold

    You are looking sharp !

  182. Albion Online Power Leveling on February 3, 2016 at 9:20 pm

    Albion Online Power Leveling

    this site might help me personally to find good quality suggestions!

  183. Buy Blade And Soul Gold on February 3, 2016 at 9:20 pm

    Buy Blade And Soul Gold

    nice going!

  184. Albion Online Silver on February 3, 2016 at 9:20 pm

    Albion Online Silver

    Do you have a good sense of humor .

  185. Blade And Soul Items on February 3, 2016 at 9:20 pm

    Blade And Soul Items

    Not that I know of.

  186. Blade & Soul Power leveling on February 3, 2016 at 9:21 pm

    Blade & Soul Power leveling

    This is really a nice place.

  187. Albion Online Power Leveling on February 3, 2016 at 9:21 pm

    Albion Online Power Leveling

    What if I had the guts to quit my job.

  188. Buy Albion Online Gold on February 3, 2016 at 9:21 pm

    Buy Albion Online Gold

    Good !|Cool! I love your this bolg.

  189. Cheap BNS Gold on February 3, 2016 at 9:21 pm

    Cheap BNS Gold

    Where were we?

  190. Blade & Soul Power leveling on February 3, 2016 at 9:22 pm

    Blade & Soul Power leveling

    How do you work here ?

  191. Blade And Soul Gold on February 3, 2016 at 9:22 pm

    Blade And Soul Gold

    look great today.

  192. Albion Online Silver on February 3, 2016 at 9:22 pm

    Albion Online Silver

    nice going!

  193. Albion Online Silver on February 3, 2016 at 9:22 pm

    Albion Online Silver

    Where were we?

  194. Cheap MapleStory Mesos on February 3, 2016 at 9:23 pm

    Cheap MapleStory Mesos

    Good !|Cool! I love your this bolg.

  195. Blade & Soul Power leveling on February 3, 2016 at 9:23 pm

    Blade & Soul Power leveling

    I have no idea what you have said

  196. Blade & Soul Power leveling on February 3, 2016 at 9:23 pm

    Blade & Soul Power leveling

    youre looking sharp!

  197. Cheap Albion Online Gold on February 11, 2016 at 3:53 am

    Cheap Albion Online Gold

    i’m able to find numerous good solutions if i have trouble!

  198. MapleStory Mesos on February 11, 2016 at 3:53 am

    MapleStory Mesos

    The youre very professional .

  199. Cheap MapleStory Mesos on February 11, 2016 at 3:53 am

    Cheap MapleStory Mesos

    Up yours!

  200. Cheap Albion Online Gold on February 11, 2016 at 3:54 am

    Cheap Albion Online Gold

    You are the savior of my life.

  201. Blade And Soul Gold on February 11, 2016 at 3:54 am

    Blade And Soul Gold

    i like this website a lot!

  202. Buy MapleStory Mesos on February 11, 2016 at 3:54 am

    Buy MapleStory Mesos

    I respect your work.

  203. Albion Online Power Leveling on February 11, 2016 at 3:54 am

    Albion Online Power Leveling

    If I have the guts to quit my job .

  204. Cheap Albion Online Gold on February 11, 2016 at 3:55 am

    Cheap Albion Online Gold

    look great today.

  205. Buy Blade And Soul Gold on February 11, 2016 at 3:55 am

    Buy Blade And Soul Gold

    Why don’t we give this a try?

  206. MapleStory Mesos on February 11, 2016 at 3:55 am

    MapleStory Mesos

    No, I know.

  207. Albion Online Silver on February 11, 2016 at 3:55 am

    Albion Online Silver

    i can discover numerous good solutions basically have any difficulty!

  208. Cheap Blade And Soul Gold on February 11, 2016 at 3:56 am

    Cheap Blade And Soul Gold

    The youre very professional .

  209. Buy Blade And Soul Gold on February 11, 2016 at 3:56 am

    Buy Blade And Soul Gold

    What is with that guy?

  210. Buy BNS Gold on February 11, 2016 at 3:56 am

    Buy BNS Gold

    Come on, cut it out!

  211. buy Albion Online Gold on February 11, 2016 at 3:56 am

    buy Albion Online Gold

    Im very pleased with your work.

  212. MapleStory Mesos on February 11, 2016 at 3:57 am

    MapleStory Mesos

    Leave me alone !

  213. Blade & Soul Power leveling on February 11, 2016 at 3:57 am

    Blade & Soul Power leveling

    look great today.

  214. Albion Online Gold on February 11, 2016 at 3:57 am

    Albion Online Gold

    That’s not the point.

  215. Cheap Blade And Soul Gold on February 11, 2016 at 3:57 am

    Cheap Blade And Soul Gold

    Hold it!

  216. Cheap Albion Online Gold on February 11, 2016 at 3:58 am

    Cheap Albion Online Gold

    Why don’t we give this a try?

  217. MapleStory Mesos on February 11, 2016 at 3:58 am

    MapleStory Mesos

    What if I had the guts to quit my job.

  218. Albion Online Silver on February 11, 2016 at 3:58 am

    Albion Online Silver

    hello!this is extremely good site!

  219. Blade & Soul Power leveling on February 11, 2016 at 3:58 am

    Blade & Soul Power leveling

    You are looking sharp !

  220. Albion Online Power Leveling on February 11, 2016 at 3:59 am

    Albion Online Power Leveling

    Do not push me.

  221. Blade And Soul Items on February 11, 2016 at 3:59 am

    Blade And Soul Items

    I’ve been through this!

  222. Blade & Soul Gold on February 11, 2016 at 3:59 am

    Blade & Soul Gold

    If he shows up, we stick with him.

  223. Blade And Soul Gold on February 11, 2016 at 3:59 am

    Blade And Soul Gold

    Come on, Stop!

  224. Blade-Soul.com on February 11, 2016 at 4:00 am

    Blade-Soul.com

    I made a fool of myself.

  225. Blade & Soul Power leveling on February 11, 2016 at 4:00 am

    Blade & Soul Power leveling

    You’re so cute.

  226. MapleStory Mesos on February 11, 2016 at 4:00 am

    MapleStory Mesos

    Good !|Cool! I love your this bolg.

  227. Albion Online Silver on February 11, 2016 at 4:01 am

    Albion Online Silver

    I’ll be there for you .

  228. Cheap Albion Online Gold on February 11, 2016 at 4:01 am

    Cheap Albion Online Gold

    I will be there for you.

  229. Blade & Soul Power leveling on February 11, 2016 at 4:01 am

    Blade & Soul Power leveling

    You bet !

  230. Albion Online Silver on February 12, 2016 at 8:55 pm

    Albion Online Silver

    What is with that guy?

  231. Albion Online Gold on February 12, 2016 at 8:55 pm

    Albion Online Gold

    I do not have the slightest idea

  232. Albion Online Gold on February 12, 2016 at 8:56 pm

    Albion Online Gold

    Not that I know of.

  233. Cheap Albion Online Gold on February 12, 2016 at 8:56 pm

    Cheap Albion Online Gold

    The youre really talented .

  234. BNS Gold on February 12, 2016 at 8:56 pm

    BNS Gold

    You are so cute.

  235. Albion Online Silver on February 12, 2016 at 8:56 pm

    Albion Online Silver

    You are nothing like us .

  236. Cheap BNS Gold on February 12, 2016 at 8:57 pm

    Cheap BNS Gold

    I have no idea what you have said

  237. Albion Online Power Leveling on February 12, 2016 at 8:57 pm

    Albion Online Power Leveling

    Not that I know of.

  238. buy MapleStory Mesos on February 12, 2016 at 8:57 pm

    buy MapleStory Mesos

    Where were we?

  239. Albion Online Items on February 12, 2016 at 8:57 pm

    Albion Online Items

    this site might help me personally to locate some good suggestions!

  240. buy Albion Online Gold on February 12, 2016 at 8:58 pm

    buy Albion Online Gold

    i love this website a lot!

  241. Blade And Soul Items on February 12, 2016 at 8:58 pm

    Blade And Soul Items

    this can be a very useful web site!

  242. Albion Online Silver on February 12, 2016 at 8:58 pm

    Albion Online Silver

    were so proud of you.

  243. Albion Online Silver on February 12, 2016 at 8:59 pm

    Albion Online Silver

    What if I had the guts to quit my job.

  244. Cheap Albion Online Gold on February 12, 2016 at 8:59 pm

    Cheap Albion Online Gold

    What is that guy?

  245. MS Mesos on February 12, 2016 at 8:59 pm

    MS Mesos

    You are so cute.

  246. Blade & Soul Power leveling on February 12, 2016 at 8:59 pm

    Blade & Soul Power leveling

    I do not know what you are saying

  247. Buy Blade And Soul Gold on February 12, 2016 at 9:00 pm

    Buy Blade And Soul Gold

    You started it !

  248. Blade-Soul.com on February 12, 2016 at 9:00 pm

    Blade-Soul.com

    nice going!

  249. Cheap Albion Online Gold on February 12, 2016 at 9:00 pm

    Cheap Albion Online Gold

    What is with that guy?

  250. Blade & Soul Gold on February 12, 2016 at 9:00 pm

    Blade & Soul Gold

    That’s not the issue.

  251. Albion Online Power Leveling on February 14, 2016 at 6:49 pm

    Albion Online Power Leveling

    Good !|Cool! I love your this bolg.

  252. Cheap BNS Gold on February 14, 2016 at 6:49 pm

    Cheap BNS Gold

    this website can help me to locate some good suggestions!

  253. Albion Online Silver on February 14, 2016 at 6:50 pm

    Albion Online Silver

    You did a good job .

  254. Cheap Blade And Soul Gold on February 14, 2016 at 6:50 pm

    Cheap Blade And Soul Gold

    Proud of you .

  255. MapleStory Mesos on February 14, 2016 at 6:50 pm

    MapleStory Mesos

    i like this website a lot!

  256. Buy Blade And Soul Gold on February 14, 2016 at 6:50 pm

    Buy Blade And Soul Gold

    Now you tell me that she was not a knockout !

  257. MS Mesos on February 14, 2016 at 6:51 pm

    MS Mesos

    You are looking sharp !

  258. Cheap MapleStory Mesos on February 14, 2016 at 6:51 pm

    Cheap MapleStory Mesos

    If he shows up, we stick with him.

  259. Blade & Soul Power leveling on February 14, 2016 at 6:51 pm

    Blade & Soul Power leveling

    You are nothing like us .

  260. Albion Online Silver on February 14, 2016 at 6:51 pm

    Albion Online Silver

    Even call it.

  261. Blade & Soul Gold on February 14, 2016 at 6:52 pm

    Blade & Soul Gold

    What if I had the guts to quit my job.

  262. Blade And Soul Gold on February 14, 2016 at 6:52 pm

    Blade And Soul Gold

    That’s not the point.

  263. Buy Blade And Soul Gold on February 14, 2016 at 6:52 pm

    Buy Blade And Soul Gold

    You fall for it every time.

  264. u4fifa.com on June 1, 2016 at 7:15 pm

    u4fifa.com

    hi!this is very nice site!

  265. buy nba 2k16 mt ps4 on June 7, 2016 at 11:02 am

    buy nba 2k16 mt ps4

    You have a good taste.

  266. UPAlbion on July 4, 2016 at 12:38 pm

    UPAlbion

    You are nothing like us .

  267. UPAlbion.com on July 11, 2016 at 10:52 am

    UPAlbion.com

    I made a fool of myself.

  268. buy fifa 17 coins on July 18, 2016 at 3:44 pm

    buy fifa 17 coins

    it’s a excellent weblog and i like it very much!

  269. buying fifa 17 coins on July 20, 2016 at 4:51 pm

    buying fifa 17 coins

    Now you tell me that she was not a knockout !

  270. FIFA17 PC 1800k coins on August 24, 2016 at 3:11 am

    FIFA17 PC 1800k coins

    Take my word .

  271. buy fifa 17 points on September 16, 2016 at 8:04 pm

    buy fifa 17 points

    Not that I know of.

  272. buy NBA 2K17 MT on October 31, 2016 at 1:30 pm

    buy NBA 2K17 MT

    You always love it.

  273. cheap NBA 2K17 MT on February 12, 2017 at 8:11 am

    cheap NBA 2K17 MT

    The youre really talented .

The comments are closed.