Ejemplo n.º 1
0
class ExampleStore(object):
    def __init__(self):
        self.database = Database("examplestore", "password")
        engine = create_engine(
            "mysql://*****:*****@localhost/examplestore")
        Session = sessionmaker(bind=engine)
        self.session = Session()

    def export_from_mysql(self):
        exporter = Exporter("examplestore.xml")

        for product in self.session.query(Product):
            item = Item(exporter.database, "product%s" % product.id)
            item.add_tag("product")
            exporter.export(item)

        for customer in self.session.query(Customer):
            item = Item(exporter.database, "customer%s" % customer.id)
            item.add_tag("customer")
            for purchase in self.session.query(Purchase).filter_by(
                    customer=customer.id):
                item.link_to("product%s" % purchase.product)
            exporter.export(item)

        exporter.finish()

    def import_to_directededge(self):
        self.database.import_from_file("examplestore.xml")

    def create_customer(self, id):
        item = Item(self.database, "customer%s" % id)
        item.add_tag("customer")
        item.save()

    def create_product(self, id):
        item = Item(self.database, "product%s" % id)
        item.add_tag("product")
        item.save()

    def add_purchase(self, customer_id, product_id):
        item = Item(self.database, "customer%s" % customer_id)
        item.link_to("product%s" % product_id)
        item.save()

    def related_products(self, product_id):
        item = Item(self.database, "product%s" % product_id)
        return [
            related.replace("product", "")
            for related in item.related(["product"])
        ]

    def personalized_recommendations(self, customer_id):
        item = Item(self.database, "customer%s" % customer_id)
        return [
            related.replace("product", "")
            for related in item.recommended(["product"])
        ]
class ExampleStore(object):
    def __init__(self):
        self.database = Database("examplestore", "password")
        engine = create_engine("mysql://*****:*****@localhost/examplestore")
        Session = sessionmaker(bind=engine)
        self.session = Session()

    def export_from_mysql(self):
        exporter = Exporter("examplestore.xml")

        for product in self.session.query(Product):
            item = Item(exporter.database, "product%s" % product.id)
            item.add_tag("product")
            exporter.export(item)
            
        for customer in self.session.query(Customer):
            item = Item(exporter.database, "customer%s" % customer.id)
            item.add_tag("customer")
            for purchase in self.session.query(Purchase).filter_by(customer=customer.id):
                item.link_to("product%s" % purchase.product)
            exporter.export(item)

        exporter.finish()

    def import_to_directededge(self):
        self.database.import_from_file("examplestore.xml")

    def create_customer(self, id):
        item = Item(self.database, "customer%s" % id)
        item.add_tag("customer")
        item.save()

    def create_product(self, id):
        item = Item(self.database, "product%s" % id)
        item.add_tag("product")
        item.save()

    def add_purchase(self, customer_id, product_id):
        item = Item(self.database, "customer%s" % customer_id)
        item.link_to("product%s" % product_id)
        item.save()

    def related_products(self, product_id):
        item = Item(self.database, "product%s" % product_id)
        return [related.replace("product", "") for related in item.related(["product"])]

    def personalized_recommendations(self, customer_id):
        item = Item(self.database, "customer%s" % customer_id)
        return [related.replace("product", "") for related in item.recommended(["product"])]
Ejemplo n.º 3
0
 def __init__(self):
     self.database = Database("project42startupweekend",
                              "878d9cedbec095d53f6904b5de855c74")
Ejemplo n.º 4
0
class RecommendStore(object):
    def __init__(self):
        self.database = Database("project42startupweekend",
                                 "878d9cedbec095d53f6904b5de855c74")

    def export_to_xml(self, users):
        exporter = Exporter('recommendstore.xml')
        # loop thru users and words
        k_exist = []
        for u in users:
            #pitem = Item(exporter.database,u.twitter)
            #pitem.add_tag('person')
            #exporter.export(pitem)
            for k in u.bio_kws:
                if k not in k_exist:
                    item = Item(exporter.database, "k_%s" % k)
                    item.add_tag('keyword')
                    k_exist.append(k)
                    exporter.export(item)

        #re-loop!!
        for u in users:
            pitem = Item(exporter.database, u.twitter)
            pitem.add_tag('person')
            for k in u.bio_kws:
                pitem.link_to("k_%s" % k)
            exporter.export(pitem)

        exporter.finish()

    def import_to_directed_edge(self):
        self.database.import_from_file('recommendstore.xml')

    def import_de_test(self):
        self.database.import_from_file('testrec.xml')

    def create_keyword(self, kw):
        item = Item(self.database, "k_%s" % kw)
        item.add_tag('keyword')
        item.save()

    def create_user(self, name):
        item = Item(self.database, name)
        item.add_tag('person')
        item.save()

    def add_bio(self, kw, name):
        item = Item(self.database, name)
        item.link_to("k_%s" % kw)
        item.save()

    def create_bio_links(self, user):
        for k in user.bio_kws:
            self.add_bio(k, user.twitter)

    def initialise_memory(self, users):
        for u in users:
            self.create_user(u.twitter)
            for k in u.bio_kws:
                self.create_keyword(k)
            self.create_bio_links(u)

    def recommend_peeps(self, username):
        item = Item(self.database, username)
        return item.related()

    def recommend_users(self, username):
        item = Item(self.database, username)
        return item.related(['person'], excludeLinked=True)
 def __init__(self):
     self.database = Database("examplestore", "password")
     engine = create_engine("mysql://*****:*****@localhost/examplestore")
     Session = sessionmaker(bind=engine)
     self.session = Session()
Ejemplo n.º 6
0
 def __init__(self):
     self.database = Database("examplestore", "password")
     engine = create_engine(
         "mysql://*****:*****@localhost/examplestore")
     Session = sessionmaker(bind=engine)
     self.session = Session()
 def __init__(self):
   self.database = Database("project42startupweekend","878d9cedbec095d53f6904b5de855c74")
class RecommendStore(object):
  def __init__(self):
    self.database = Database("project42startupweekend","878d9cedbec095d53f6904b5de855c74")
 
  def export_to_xml(self,users):
    exporter = Exporter('recommendstore.xml')
    # loop thru users and words
    k_exist = []
    for u in users:
      #pitem = Item(exporter.database,u.twitter)
      #pitem.add_tag('person')
      #exporter.export(pitem)
      for k in u.bio_kws:
        if k not in k_exist:
          item = Item(exporter.database,"k_%s" % k)
          item.add_tag('keyword')
          k_exist.append(k)
          exporter.export(item)

    #re-loop!!
    for u in users:
      pitem = Item(exporter.database,u.twitter)
      pitem.add_tag('person')
      for k in u.bio_kws:
        pitem.link_to("k_%s" % k)
      exporter.export(pitem)

    exporter.finish()

  def import_to_directed_edge(self):
    self.database.import_from_file('recommendstore.xml')




  def import_de_test(self):
    self.database.import_from_file('testrec.xml')

  def create_keyword(self,kw):
    item = Item(self.database,"k_%s" % kw)
    item.add_tag('keyword')
    item.save()

  def create_user(self,name):
    item = Item(self.database,name)
    item.add_tag('person')
    item.save()

  def add_bio(self,kw,name):
    item = Item(self.database,name)
    item.link_to("k_%s" % kw)
    item.save()

  def create_bio_links(self,user):
    for k in user.bio_kws:
      self.add_bio(k,user.twitter)

  def initialise_memory(self,users):
    for u in users:
      self.create_user(u.twitter)
      for k in u.bio_kws:
        self.create_keyword(k)
      self.create_bio_links(u)

  def recommend_peeps(self,username):
    item = Item(self.database,username)
    return item.related()

  def recommend_users(self,username):
    item = Item(self.database,username)
    return item.related(['person'],excludeLinked=True)
Ejemplo n.º 9
0
 def __init__(self):
     self.database = Database("scoopt.in", "600b34eef3d885fbdc0155aff888265e")
Ejemplo n.º 10
0
class GraphStore(object):
    """directed edge graph store"""
    def __init__(self):
        self.database = Database("scoopt.in", "600b34eef3d885fbdc0155aff888265e")
        
    def export(self):
        exporter = Exporter("graphstore.xml")
        for story in Story.objects.all():
            item = Item(exporter.database, "story%s" % story.id)
            item.add_tag("story")
            exporter.export(item)

        from django.contrib.auth.models import User
        for user in User.objects.all():
            item = Item(exporter.database, "user%s" % user.id)
            item.add_tag("user")
            for story in user.liked.all():
                item.link_to("story%s" % story.id)
            exporter.export(item)
        
        from tagging.models import Tag
        for tag in Tag.objects.all():
            item = Item(exporter.database, "tag%s" % tag.id)
            item.add_tag("tag")
            for tagged_item in tag.items.all():
                item.link_to("story%s" % tagged_item.object.id)
        
        exporter.finish()
        
    def import_to_directededge(self):
        self.database.import_from_file("graphstore.xml")
    
    def create_user(self, id):
        item = Item(self.database, "user%s" % id)
        item.add_tag("user")
        item.save()
        
    def create_story(self, id):
        item = Item(self.database, "story%s" % id)
        item.add_tag("story")
        item.save()
    
    def like_story(self, user_id, story_id):
        item = Item(self.database, "user%s" % user_id)
        item.link_to("story%s" % story_id)
        item.save()
    
    def run_tags(self):
        for tag in Tag.objects.all():
            item = Item(self.database, "tag%s" % tag.id)
            item.add_tag("tag")
            for tagged_item in tag.items.all():
                item.link_to("story%s" % tagged_item.object.id)
    
    def add_tag(self, story_id, tag_id):
        item = Item(self.database, "story%s" % story_id)
        item.link_to("tag%s" % tag_id)
        item.save()
    
    def recommended_stories(self, user_id):
        item = Item(self.database, "user%s" % user_id)
        return [related.replace("story", "") for related in item.recommended(["story"])]
    
    def interested_tags(self, user_id):
        item = Item(self.database, "user%s" % user_id)
        return [related.replace("tag", "") for related in item.recommended(["tag"])]