Avatar billede jaisemand Nybegynder
11. december 2002 - 12:53 Der er 9 kommentarer og
1 løsning

webcam program

hvordan laver jeg et program i java der automatisk henter et billede på www.politikens.dk's webcam hver gang det opdatere (hver 7.sek ca.) i et længere tidsrum eks. en 1½ time. billederne er jpegs. Hvis man havde tålmodigheden kunne man sidde og højreklikke og vælge gem som hver gang billedet opdaterede. Men jeg vil gerne lave en lille applet der varetager denne opgave. Jeg er ikke så stærk i Java, så hvad ville være den simpleste/bedste måde at gå at gå igang på?
Jeg skal bagefter i Adobe Premiere sætte alle de jpegs der er blevet hentet sammen til en film.
Avatar billede arne_v Ekspert
11. december 2002 - 13:22 #1
Jeg aner intet om WebCam, men er det ikke bare at
lave en uendelig løkke som:
henter en JPG fil med HTTP og skriver den til disk under et navn som tælles op hver gang
?
Avatar billede medions Nybegynder
11. december 2002 - 13:25 #2
Hvorfor ikke bruge Webcam32!? -Det er et VIRKLIG kanont program! -prøv fx. at se her www.medions.dk - og gå ind under Webcam... -jeg er ik' lige hjemme nu, men ellers ville jeg være der ;-)

//>Rune
Avatar billede arne_v Ekspert
11. december 2002 - 14:09 #3
Et lille eksempel på, hvordan man henter en fil via HTTP:

import java.io.*;
import java.net.*;

public class Fetcher {

    public static int getUrl(String urlString, byte[] buf) {
        int len = 0;
        try {
            URL con = new URL(urlString);
            InputStream is = con.openStream();
            int l;
            while ((l = is.read(buf, len, buf.length - len)) > 0) {
                len = len + l;
            }
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return len;
    }
    public static void main(String[] args) {
        byte[] buf = new byte[100000];
        int l = getUrl("http://www.eksperten.dk//favicon.ico", buf);
        try {
            FileOutputStream fos = new FileOutputStream("C:\\eksperten.gif");
            fos.write(buf, 0, l);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Avatar billede jaisemand Nybegynder
11. december 2002 - 15:36 #4
Det er sådan noget jeg skal bruge. Men jeg kan ikke åbne gif'en. Den siger at typen ikke kan bestemmes.
Avatar billede arne_v Ekspert
11. december 2002 - 15:40 #5
[jeg testede på en anden fil som kun er tilgængelig
internt bag vores firewall]

Måske er den fil slet ikke en GIF fil.

Prøv lige og erstat den URL med en anden URL.

F.eks.:
http://www.google.com/images/logo.gif

og prøv igen.
Avatar billede jaisemand Nybegynder
11. december 2002 - 15:47 #6
Tak! Så virker det sq. Så skal jeg vel bare lave en løkke der gentager programmet i et givent tidsrum? :))
Avatar billede jaisemand Nybegynder
11. december 2002 - 15:52 #7
underligt nok virker den ikke på www.politiken.dk. under webcam
Jeg har prøvet at højreklikke på billedet for at få den korrekte URL, den giver mig den rigtige størrelse fil, men jeg kan ikke åbne den?? Underligt.
Avatar billede arne_v Ekspert
11. december 2002 - 15:54 #8
Ja.

Noget i retning af:

    public static void main(String[] args) {
        for (int i = 0; i < 100; i++) {
            byte[] buf = new byte[100000];
            int l = getUrl("http://et.eller.andet/noget.jpg", buf);
            try {
                FileOutputStream fos =
                    new FileOutputStream("C:\\noget" + i + ".jpg");
                fos.write(buf, 0, l);
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            try {
                Thread.sleep(10 * 1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
Avatar billede arne_v Ekspert
11. december 2002 - 15:54 #9
Ovenstående looper kun 100 gange (og venter 10 sekunder
mellem hver).

Du kan selv rette til efter behov.
Avatar billede jaisemand Nybegynder
11. december 2002 - 16:40 #10
Det virker helt som jeg kun turde håbe på. Tak for det Arne. :)))))
testede det på http://www.infohome.dk/copenhagen/index.html
Ses. mvh. Jais.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester