You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
701 B
25 lines
701 B
from lxml.etree import etree
|
|
class __price_scraper__:
|
|
def __init__(self,url,page_source):
|
|
self.url = url
|
|
self.page_source = page_source
|
|
self.etree = etree.fromstring(self.page_source)
|
|
|
|
def scrape(self):
|
|
scrape_for = ['price','name']
|
|
if self.in_stock():
|
|
for cat in scrape_for:
|
|
self.__setattr__(cat,eval_xpath(cat))
|
|
|
|
def eval_xpath(name):
|
|
return self.etree.xpath(self.xpaths[name])
|
|
|
|
def __get_stock__(self):
|
|
return self.eval_xpath('in_stock')
|
|
|
|
def amazon_scraper(__price_scraper__):
|
|
xpaths = {
|
|
}
|
|
def in_stock(self):
|
|
stock_val = self.__get_stock__()
|
|
return stock_val != 'poop'
|