Add fill_object

Signed-off-by: Vicnet <vo.publique@gmail.com>
This commit is contained in:
Vicnet 2014-03-15 19:58:13 +01:00 committed by Florent
commit 71ecf62e6f
2 changed files with 11 additions and 27 deletions

View file

@ -78,24 +78,8 @@ class LaCentraleBackend(BaseBackend, ICapPriceComparison):
# id is a url code part for one car page # id is a url code part for one car page
with self.browser: with self.browser:
return self.browser.get_price(id) return self.browser.get_price(id)
## inherited from ICapPriceComparison
#with self.browser:
#if isinstance(id, Price):
#print "get_price by price", id
#price = id
#else:
##p_id, s_id = id.split('.', 2)
##product = Product(p_id)
##for price in self.iter_prices(product):
##if price.id == id:
##break
##else:
#return None
##price.shop.info = self.browser.get_shop_info(price.id.split('.', 2)[-1])
#return price
#def fill_price(self, price, fields): def fill_price(self, price, fields):
#print "VO lacentrale fill_price", price return self.get_price(price.id)
#return self.get_price(price)
#OBJECTS = {Price: fill_price, } OBJECTS = {Price: fill_price, }

View file

@ -18,14 +18,12 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>. # along with weboob. If not, see <http://www.gnu.org/licenses/>.
#from decimal import Decimal from decimal import Decimal
#import re import re
from weboob.tools.browser import BasePage, BrokenPageError from weboob.tools.browser import BasePage, BrokenPageError
from weboob.capabilities import NotAvailable, NotLoaded from weboob.capabilities import NotAvailable, NotLoaded
from weboob.capabilities.pricecomparison import Product, Price, Shop from weboob.capabilities.pricecomparison import Product, Price, Shop
import re
from decimal import Decimal
__all__ = ['MainPage','ListingAutoPage'] __all__ = ['MainPage','ListingAutoPage']
@ -42,6 +40,11 @@ class MainPage(BasePage):
def get_decimal(s): def get_decimal(s):
return re.findall(r'\d+', s.replace(' ',''))[0] return re.findall(r'\d+', s.replace(' ',''))[0]
def new_shop(id):
shop = Shop(id)
shop.set_empty_fields(NotLoaded)
return shop
def new_price(id, product, cost, title): def new_price(id, product, cost, title):
price = Price(id) price = Price(id)
price.product = product price.product = product
@ -49,10 +52,7 @@ def new_price(id, product, cost, title):
price.currency = u'' price.currency = u''
price.message = unicode(title) price.message = unicode(title)
price.set_empty_fields(NotAvailable) price.set_empty_fields(NotAvailable)
price.shop = new_shop(id)
price.shop = Shop(price.id)
price.shop.set_empty_fields(NotAvailable) # NotLoaded
return price return price
# I manage listing page and extract information # I manage listing page and extract information