torsdag 3 april 2008

.NET-API för Postens kollisökning

Jag önskar att det fanns ett litet program som låg i bakgrunden och övervakade uppdateringar för en försändelse hos Posten. Jag vill liksom veta när paketets status har uppdaterats, utan att själv med jämna mellanrum behöva gå in på Postens webbplats och göra en manuell kollisökning.

Man hade kunnat lösa det genom att ha kollisökningen uppe i ett fönster som uppdateras automatiskt förstås. Jag tittade lite på formulären som används för kollisökning. Det som de flesta säkert använder utnyttjar POST för att skicka kollinumret till själva spårningssidan, vilket omöjliggör att man t.ex. lägger till ett bokmärke för snabb åtkomst. Men det finns ett till formulär som av någon anledning använder GET. Såhär ser en URL ut som kan användas för direkt kollisökning:

http://www.posten.se/tracktrace/TrackConsignments_do.jsp?
trackntraceAction=saveSearch&lang=SE&consignmentId=83689516055SE


Det sista i adressen är variabeln consignmentId och innehåller själva kollinumret. Adressen skulle kunna användas för att skriva ett minimalistiskt API för kollisökning, vilket i sin tur hade varit smidigt om man skulle ta sig för att faktiskt utveckla exempelvis en widget/gadget eller motsvarande.

Undrar om det finns fler än jag som skulle vilja ha något i den stilen?

Uppdatering: Jag har skrivit ett mycket simpelt .NET-API för hämtning av statusinformation för en försändelse givet ett kollinummer. Du får använda det till vad du vill. Jag testade det nyss och då funkade det fint, men det kan mycket väl hända att Posten ändrar på strukturen på sin sida och då kommer det med all sannolikhet att sluta fungera. Jag tar inget ansvar för följder av eventuellt användande, etc.

Ladda ned filen här: PostenAPI.dll

3 kommentarer:

  1. Är det tv:n som har beställts?

    Jag skrev en gång i tiden en liten rad i ett "widgetprogram" som heter conky som var 5:e minut kollade om en rad hade lagts till på en hemsida. Jag körde bara "grep" efter strängen.

    I det där läget borde det ju vara fantastiskt enkelt att bara klippa ut texten som ligger i divclass "rightcol" eller nåt.

    SvaraRadera
  2. Jo det är ju en möjlighet, helt klart. Det hade varit snyggare om de hade haft ett ID på tabellen som statushistoriken ligger i så att man garanterat får tag på rätt grejer dock. Men det går ju att lösa, det finns alltid något kriterie man kan använda.

    TV:n är beställd.

    SvaraRadera
  3. Schysst TV, ser ut att vara den jag tittat på också. Blir lite avundsjuk... Får trösta mig med golvläggning imorgon istället.

    SvaraRadera