Skip to content

Commit

Permalink
small improvements and fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
ZuinigeRijder committed Mar 16, 2023
1 parent f790dd7 commit 4bd0288
Show file tree
Hide file tree
Showing 4 changed files with 131 additions and 100 deletions.
40 changes: 28 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,17 @@
# rdwapihulpmiddelen
RDW API hulpmiddelen voor de IONIQ 5, misschien dat het ook gebruikt kan worden ter inspiratie voor andere auto's. Maar kan natuurlijk ook gebruikt worden om nieuwe kentekens te vinden die nog niet op naam staan.
- [rdwapihulpmiddelen perl versie](#rdwapihulpmiddelen-perl-versie)
- [rdw.bat](#rdwbat)
- [rdwfinder.bat](#rdwfinderbat)
- [missing.bat](#missingbat)


# rdwapihulpmiddelen perl versie
Perl RDW API hulpmiddelen voor de IONIQ 5, misschien dat het ook gebruikt kan worden ter inspiratie voor andere auto's. Maar kan natuurlijk ook gebruikt worden om nieuwe kentekens te vinden die nog niet op naam staan.
Voor de python versie, [zie hier](https://github.com/ZuinigeRijder/rdwapihulpmiddelen_python).

Er zijn 3 tools:
- rdw.bat: haalt IONIQ 5 kentekens op naam op
- rdwfinder.bat: vind kentekens in de opgegeven range (hoeven nog niet op naam te staan)
- missing.bat: haal de kentekens in missing.txt op en laat de nieuwe (nog niet opgehaalde) kentekens zien.
- missing.bat: haal de kentekens in missing.txt op en laat de nieuwe (nog niet opgehaalde) kentekens zien.

De tools worden gedraaid op Windows 10 en zijn geschreven in Perl, Perl versie die ik gebruik:
````
Expand All @@ -25,24 +32,33 @@ wget --version
GNU Wget 1.20.3 built on mingw32.
````

En ook curl wordt gebruikt voor https, curl versie die ik gebruik:
````
curl --version
curl 7.83.1 (Windows) libcurl/7.83.1 Schannel
Release-Date: 2022-05-13
Protocols: dict file ftp ftps http https imap imaps pop3 pop3s smtp smtps telnet tftp
Features: AsynchDNS HSTS IPv6 Kerberos Largefile NTLM SPNEGO SSL SSPI UnixSockets
````

## rdw.bat
Opgehaalde kentekens worden opgeslagen onder sub-map kentekens/ zodat alleen de delta kentekens opgehaald worden.
Opgehaalde kentekens worden opgeslagen onder sub-map kentekens/ zodat alleen de delta kentekens opgehaald worden.
P.S.
- crëeer de sub-map kentekens/ handmatig
- de eerste keer zul je dus véél kentekens ophalen (meer dan 3000 voor de IONIQ 5)
- crëeer de sub-map kentekens/ handmatig
- de eerste keer zul je dus véél kentekens ophalen (meer dan 3000 voor de IONIQ 5)

3 aanroepmogelijkheden:
- zonder parameters: rdw
- samenvatting: rdw summary
- overzicht: rdw overview
- zonder parameters: rdw.bat
- samenvatting: rdw.bat summary
- overzicht: rdw.bat overview

## rdwfinder.bat
Vindt kenteken in een range, handig om kentekens nog niet op naam te vinden. Bijvoorbeeld:
- rdwfinder R LF 510 520 1
- rdwfinder.bat R LF 510 520 1

P.S.
P.S.
Het is mogelijk dat je IP-adres geblocked gaat worden, wanneer je teveel opvragingen doet.
Hoewel er geprobeerd wordt om niet teveel opvragingen te doen.
Hoewel er geprobeerd wordt om niet teveel opvragingen te doen.
Bij voorkeur gebruik je een VPN om dit te voorkomen.

## missing.bat
Expand Down
60 changes: 21 additions & 39 deletions missing.bat
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ goto endofperl
#===============================================================================
#use diagnostics;
use strict;
use Carp;
use JSON qw( decode_json ); # From CPAN
use Data::Dumper;

Expand Down Expand Up @@ -82,7 +83,7 @@ sub myDie($) {
my ($txt) = @_;
print "\n", "?" x 80, "\n";
print "Error: $txt\n\n";
die("$txt\n\n");
croak("$txt\n\n");
exit 1;
}

Expand Down Expand Up @@ -657,7 +658,11 @@ sub getVariant($$$$) {
$foundVariant2 .= ' (Atlas White Matte)';
if ($foundVariant ne '') {
print "Found DUBBEL WHITE $kenteken: $fulltype -> [$foundVariant],[$foundVariant2]\n";
$foundVariant2 = ''; #do not assume Atlas White Matte
if ($model2023) {
$foundVariant = ''; #do assume Atlas White Matte
} else {
$foundVariant2 = ''; #do not assume Atlas White Matte
}
}
}
} elsif ($kleur eq 'GROEN') {
Expand Down Expand Up @@ -842,14 +847,14 @@ fillPrice(\%pricesmaart2022_small_battery, 'Connect', 46905-400, 58, $false, $fa
fillPrice(\%pricesmaart2022_small_battery, 'Connect+', 49905-400, 58, $false, $false, "maart 2022 E400 korting");
fillPrice(\%pricesmaart2022_small_battery, 'Lounge', 52305-600, 58, $false, $false, "maart 2022 E600 korting");

fillPrice(\%pricesmaart2022_big_battery, 'Style', 46405-1000, 73, $false, $false, "maart 2022 E1000 korting");
fillPrice(\%pricesmaart2022_big_battery, 'Style', 46405-900, 73, $false, $false, "maart 2022 E900 korting");
fillPrice(\%pricesmaart2022_big_battery, 'Connect', 50505-1000, 73, $false, $false, "maart 2022 E1000 korting");
fillPrice(\%pricesmaart2022_big_battery, 'Connect+', 53505-1000, 73, $false, $false, "maart 2022 E1000 korting");
fillPrice(\%pricesmaart2022_big_battery, 'Lounge', 55905-1000, 73, $false, $false, "maart 2022 E1000 korting");
fillPrice(\%pricesmaart2022_big_battery, 'Lounge', 55905-1200, 73, $false, $false, "maart 2022 E1200 korting");

fillPrice(\%pricemaart2022_big_battery_AWD, 'Connect', 54505-1000, 73, $true, $false, "maart 2022 E1000 korting");
fillPrice(\%pricemaart2022_big_battery_AWD, 'Connect+', 57505-1000, 73, $true, $false, "maart 2022 E1000 korting");
fillPrice(\%pricemaart2022_big_battery_AWD, 'Lounge', 59905-1000, 73, $true, $false, "maart 2022 E1000 korting");
fillPrice(\%pricemaart2022_big_battery_AWD, 'Lounge', 59905-1200, 73, $true, $false, "maart 2022 E1200 korting");

$PRICELISTS{"20220301_58"} = \%pricesmaart2022_small_battery;
$PRICELISTS{"20220301_73"} = \%pricesmaart2022_big_battery;
Expand Down Expand Up @@ -880,14 +885,14 @@ fillPrice(\%pricesmei2022_small_battery, 'Connect', 48405-400, 58, $false, $fals
fillPrice(\%pricesmei2022_small_battery, 'Connect+', 51405-400, 58, $false, $false, "mei 2022 E400 korting");
fillPrice(\%pricesmei2022_small_battery, 'Lounge', 53805-600, 58, $false, $false, "mei 2022 E600 korting");

fillPrice(\%pricesmei2022_big_battery, 'Style', 47905-1000, 73, $false, $false, "mei 2022 E1000 korting");
fillPrice(\%pricesmei2022_big_battery, 'Style', 47905-900, 73, $false, $false, "mei 2022 E900 korting");
fillPrice(\%pricesmei2022_big_battery, 'Connect', 52005-1000, 73, $false, $false, "mei 2022 E1000 korting");
fillPrice(\%pricesmei2022_big_battery, 'Connect+', 55005-1000, 73, $false, $false, "mei 2022 E1000 korting");
fillPrice(\%pricesmei2022_big_battery, 'Lounge', 57405-1000, 73, $false, $false, "mei 2022 E1000 korting");
fillPrice(\%pricesmei2022_big_battery, 'Lounge', 57405-1200, 73, $false, $false, "mei 2022 E1200 korting");

fillPrice(\%pricesmei2022_big_battery_AWD, 'Connect', 56005-1000, 73, $true, $false, "mei 2022 E1000 korting");
fillPrice(\%pricesmei2022_big_battery_AWD, 'Connect+', 59005-1000, 73, $true, $false, "mei 2022 E1000 korting");
fillPrice(\%pricesmei2022_big_battery_AWD, 'Lounge', 61405-1000, 73, $true, $false, "mei 2022 E1000 korting");
fillPrice(\%pricesmei2022_big_battery_AWD, 'Lounge', 61405-1200, 73, $true, $false, "mei 2022 E1200 korting");

$PRICELISTS{"20220501_58"} = \%pricesmei2022_small_battery;
$PRICELISTS{"20220501_73"} = \%pricesmei2022_big_battery;
Expand Down Expand Up @@ -919,14 +924,14 @@ fillPrice(\%pricessept2022_small_battery, 'Connect+', 52900-400, 58, $false, $fa
fillPrice(\%pricessept2022_small_battery, 'Lounge', 55300-600, 58, $false, $false, "sept 2022 E600 korting");


fillPrice(\%pricessept2022_big_battery, 'Style', 49400-1000, 73, $false, $false, "sept 2022 E1000 korting");
fillPrice(\%pricessept2022_big_battery, 'Style', 49400-900, 73, $false, $false, "sept 2022 E900 korting");
fillPrice(\%pricessept2022_big_battery, 'Connect', 53500-1000, 73, $false, $false, "sept 2022 E1000 korting");
fillPrice(\%pricessept2022_big_battery, 'Connect+', 56500-1000, 73, $false, $false, "sept 2022 E1000 korting");
fillPrice(\%pricessept2022_big_battery, 'Lounge', 58900-1000, 73, $false, $false, "sept 2022 E1000 korting");
fillPrice(\%pricessept2022_big_battery, 'Lounge', 58900-1200, 73, $false, $false, "sept 2022 E1200 korting");

fillPrice(\%pricessept2022_big_battery_AWD, 'Connect', 57500-1000, 73, $true, $false, "sept 2022 E1000 korting");
fillPrice(\%pricessept2022_big_battery_AWD, 'Connect+', 60500-1000, 73, $true, $false, "sept 2022 E1000 korting");
fillPrice(\%pricessept2022_big_battery_AWD, 'Lounge', 62900-1000, 73, $true, $false, "sept 2022 E1000 korting");
fillPrice(\%pricessept2022_big_battery_AWD, 'Lounge', 62900-1200, 73, $true, $false, "sept 2022 E1200 korting");

$PRICELISTS{"20220901_58"} = \%pricessept2022_small_battery;
$PRICELISTS{"20220901_73"} = \%pricessept2022_big_battery;
Expand Down Expand Up @@ -1025,34 +1030,11 @@ $PRICELISTS{"20230101_58_2023"} = \%pricesjan2023_small_battery_2023;
$PRICELISTS{"20230101_77"} = \%pricesjan2023_big_battery_2023;
$PRICELISTS{"20230101_77AWD"} = \%pricesjan2023_big_battery_AWD_2023;

# model 2023 prijslijst januari 2023: 1400 euro duurder dan september 2022
my %pricesjan2023_small_battery_2023;
my %pricesjan2023_big_battery_2023;
my %pricesjan2023_big_battery_AWD_2023;

fillPrice(\%pricesjan2023_small_battery_2023, 'Style', 47200, 58, $false, $true, "jan 2023");
fillPrice(\%pricesjan2023_small_battery_2023, 'Connect', 51300, 58, $false, $true, "jan 2023");
fillPrice(\%pricesjan2023_small_battery_2023, 'Connect+', 54300, 58, $false, $true, "jan 2023");
fillPrice(\%pricesjan2023_small_battery_2023, 'Lounge', 56700, 58, $false, $true, "jan 2023");

fillPrice(\%pricesjan2023_big_battery_2023, 'Style', 50800, 77, $false, $true, "jan 2023");
fillPrice(\%pricesjan2023_big_battery_2023, 'Connect', 54900, 77, $false, $true, "jan 2023");
fillPrice(\%pricesjan2023_big_battery_2023, 'Connect+', 57900, 77, $false, $true, "jan 2023");
fillPrice(\%pricesjan2023_big_battery_2023, 'Lounge', 60300, 77, $false, $true, "jan 2023");

fillPrice(\%pricesjan2023_big_battery_AWD_2023, 'Connect', 58900, 77, $true, $true, "jan 2023");
fillPrice(\%pricesjan2023_big_battery_AWD_2023, 'Connect+', 61900, 77, $true, $true, "jan 2023");
fillPrice(\%pricesjan2023_big_battery_AWD_2023, 'Lounge', 64300, 77, $true, $true, "jan 2023");

$PRICELISTS{"20230101_58_2023"} = \%pricesjan2023_small_battery_2023;
$PRICELISTS{"20230101_77"} = \%pricesjan2023_big_battery_2023;
$PRICELISTS{"20230101_77AWD"} = \%pricesjan2023_big_battery_AWD_2023;

my $filename="missing.txt";
print "Processing $filename\n";
my @KENTEKENS;
my %TENAAMGESTELD;
open(FILE, "$filename") or die("Cannot open for read: $filename: $!\n");
open(FILE, "$filename") or myDie("Cannot open for read: $filename: $!\n");
my @LINES;
while (<FILE>) {
my $currentLine = $_;
Expand All @@ -1070,7 +1052,7 @@ my @errors;
my %TYPES;
my @specialKentekens;
my @newMissing;
open(OUTFILE, ">missing.outfile.txt") or die("Cannot open for write: missing.outfile.txt: $!\n");
open(OUTFILE, ">missing.outfile.txt") or myDie("Cannot open for write: missing.outfile.txt: $!\n");
my $start_time = time();
foreach my $k (@KENTEKENS) {

Expand Down Expand Up @@ -1107,7 +1089,7 @@ foreach my $k (@KENTEKENS) {
my $AfgDatKent;
my $DatumGdk = "????????";
my $EersteToelatingsdatum;
open(KENTEKENFILE, "$filename") or die("Cannot open for read: $filename: $!\n");
open(KENTEKENFILE, "$filename") or myDie("Cannot open for read: $filename: $!\n");
my $OpNaam = "????????";
while (<KENTEKENFILE>) {
my $line = "$_";
Expand Down Expand Up @@ -1222,7 +1204,7 @@ foreach my $k (@KENTEKENS) {
if (substr($date20, 0, 3) != "202") {
print "Invalid date: $date20 $EersteToelatingsdatum, $AfgDatKent, $DatumGdk\n" if $DEBUG;
$date20 = substr($date20, 6, 4) . substr($date20, 3,2) . substr($date20, 0,2);
print "Corrected date: $date20" if $DEBUG;
print "Corrected date: $date20\n" if $DEBUG;
}
print "date20=$date20 $EersteToelatingsdatum, $AfgDatKent, $DatumGdk\n" if $DEBUG;
my $value = getVariant($type, $false, $k, $date20);
Expand All @@ -1234,7 +1216,7 @@ foreach my $k (@KENTEKENS) {
}
if (not $exists) {
$filename="kentekens/x.missing.$k.html";
rename 'x.missing', $filename or die "Cannot rename file: $!";
rename 'x.missing', $filename or myDie "Cannot rename file: $!";
}
$type =~ s?\s*$??; # get rid of spaces at the end
$type =~ s?;e9\*2018\/858\*11054\*0[134]; prijs: ? Euro?;
Expand Down
Loading

0 comments on commit 4bd0288

Please sign in to comment.