Rev 173 | Rev 238 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
'''Created on 12-May-2010@author: gaurav'''from elixir import *class PhoneItem(Entity):url = Field(String(1000))name = Field(String(50))price = Field(Integer)source = Field(String(100))is_crawled = Field(Boolean)phones = ManyToOne("Phones")def __repr__(self):return "%s %s" %(self.url, self.name)class Phones(Entity):vendor = Field(String(100))base_url = Field(String(1000))items = OneToMany("PhoneItem")class Vendor(Entity):v_name = Field(String(100))v_url = Field(String(1000))class infibeam_data(Entity):name = Field(String(100))shown_price = Field(Integer)final_price = Field(Integer)class univercell_data(Entity):v_name = Field(String(100))v_site = Field(String(1000))class univercell_items(Entity):p_title = Field(String(100))p_shown_price = Field(Integer)p_final_price = Field(Integer)class indiaplaza_data(Entity):v_name = Field(String(100))v_site = Field(String(1000))class indiaplaza_items(Entity):p_name = Field(String(100))p_shown_price = Field(Integer)p_final_price = Field(Integer)p_guaranteeinfo = Field(String(100))p_shipinfo = Field(String(100))class themobilestoreurls(Entity):url = Field(String(1000))class themobilestorephones(Entity):name = Field(String(100))shown_price = Field(Integer)final_price = Field(Integer)class naaptolurls(Entity):url = Field(String(1000))class morenaaptolurls(Entity):url = Field(String(1000))class naaptolphones(Entity):name = Field(String(100))range = Field(String(100))class ntonlinesp(Entity):nid = Field(Integer)name = Field(String(100))price = Field(Integer)class ntofflinesp(Entity):nid = Field(Integer)name = Field(String(100))price = Field(Integer)class suppliers(Entity):name = Field(String(100))site = Field(String(100))last_crawled = Field(DATE(100))class models(Entity):brand = Field(String(100))model = Field(String(100))class guarantee_info(Entity):mid = Field(Integer)guaranteeinfo = Field(String(100))shipinfo = Field(String(100))class prices(Entity):supplier_id = Field(Integer)mobile_id = Field(Integer)quoted_price = Field(Integer)final_price = Field(Integer)extra_info = Field(String(1000))def init():#metadata.bind = "sqlite:///phones.sqlite"metadata.bind = "mysql://root@localhost/phonecrawler"metadata.bind.echo = Truesetup_all(True)passif __name__ == "__main__":init()