pricecharts

track prices of consumer electronics
Log | Files | Refs | README

commit a4ef8296525d1f57776b6c28b33c1ad9de907c3e
parent 9dc0054ec0f75ff4016d44b8fdcb563349fad931
Author: kyle <kyle@getaddrinfo.net>
Date:   Sun,  6 Mar 2016 15:28:14 -0700

save scraped descriptions too

Diffstat:
MPS/Database.pm | 12++++++++++++
MPS/LondonDrugs.pm | 1+
MPS/MemoryExpress.pm | 1+
3 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/PS/Database.pm b/PS/Database.pm @@ -35,6 +35,10 @@ sub new { price, duration) values (?, ?, ?, ?, ?, ?)}; $self->{insert_price} = $dbh->prepare($sql); + $sql = qq{insert or replace into descriptions(manufacturer, part_num, + retailer, description, date) values (?, ?, ?, ?, ?)}; + $self->{insert_descr} = $dbh->prepare($sql); + $dbh->{AutoCommit} = 1; $logger->debug("opened $db_dir/db\n"); @@ -49,6 +53,14 @@ sub insert_price { $self->{dbh}->commit; } +sub insert_descr { + my ($self, @args) = @_; + + $self->{dbh}->begin_work; + $self->{insert_descr}->execute(@args, time); + $self->{dbh}->commit; +} + sub create_tables { my ($dbh) = @_; diff --git a/PS/LondonDrugs.pm b/PS/LondonDrugs.pm @@ -136,6 +136,7 @@ sub scrape { my $desc = $self->scrape_description($resp); $db->insert_price($manufacturer, $part_num, "London Drugs", $price, time - $start); + $db->insert_descr($manufacturer, $part_num, "London Drugs", $desc) if ($desc); $logger->debug("scrape_price(): added price \$$price\n"); return $price; diff --git a/PS/MemoryExpress.pm b/PS/MemoryExpress.pm @@ -150,6 +150,7 @@ sub scrape { my $desc = $self->scrape_description($resp); $db->insert_price($manufacturer, $part_num, "Memory Express", $price, time - $start); + $db->insert_descr($manufacturer, $part_num, "Memory Express", $desc) if ($desc); $logger->debug("scrape_price(): added price \$$price\n"); return $price;