Avatar billede lmdthel Nybegynder
13. september 2004 - 22:11 Der er 6 kommentarer og
1 løsning

Hvordan kan jeg læse indeholdet af en webside med en java app..

Hvordan kan jeg læse indeholdet af en webside? , det kunne f.eks være myip.dk via en java applikation ??

Lmdthel
Avatar billede arne_v Ekspert
13. september 2004 - 22:13 #1
Du bruger (Http)URLConnection klassen.
Avatar billede arne_v Ekspert
13. september 2004 - 22:13 #2
Eksempel:

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

public class HttpGet {
  public static void main(String[] args) {
      try {
        URL url = new URL("http://www.eksperten.dk/");
        HttpURLConnection con = (HttpURLConnection)url.openConnection();
        con.connect();
        if(con.getResponseCode() == HttpURLConnection.HTTP_OK) {
            InputStream is = con.getInputStream();
            OutputStream os = new FileOutputStream("z.z");
            byte[] b = new byte[1000];
            int n;
            while((n = is.read(b)) >= 0) {
              os.write(b,0,n);
            }
            os.close();
            is.close();
        }
        con.disconnect();
      } catch (MalformedURLException e) {
        e.printStackTrace();
      } catch (FileNotFoundException e) {
        e.printStackTrace();
      } catch (IOException e) {
        e.printStackTrace();
      }
  }
}
Avatar billede lmdthel Nybegynder
13. september 2004 - 22:17 #3
Takkkk ... og tak for det gode eksempel
Avatar billede arne_v Ekspert
13. september 2004 - 22:19 #4
så ligger jeg et svar
Avatar billede arne_v Ekspert
13. september 2004 - 22:19 #5
Jeg har også eksempel på POST (altså det der svarer til en FORM SUBMIT).
Avatar billede lmdthel Nybegynder
15. september 2004 - 12:32 #6
Arne_v , jeg vil faktisk rigtig gerne have det eksempel på POST *S*

så hvis du har tid *S*

/Thomas
Avatar billede arne_v Ekspert
15. september 2004 - 12:38 #7
Forskellen er ikke så stor:

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

public class HttpPost {
  public static void main(String[] args) {
      try {
        URL url = new URL("http://www.domain.dk/htbin/tell2");
        HttpURLConnection con = (HttpURLConnection)url.openConnection();
        con.setRequestMethod("POST");
        String info = "nam=val";
        con.setDoOutput(true);
        con.getOutputStream().write(info.getBytes());
        con.connect();
        if(con.getResponseCode() == HttpURLConnection.HTTP_OK) {
            InputStream is = con.getInputStream();
            byte[] b = new byte[1000];
            int n;
            while((n = is.read(b)) >= 0) {
              System.out.println(new String(b,0,n));
            }
            is.close();
        }
        con.disconnect();
      } catch (MalformedURLException e) {
        e.printStackTrace();
      } catch (FileNotFoundException e) {
        e.printStackTrace();
      } catch (IOException e) {
        e.printStackTrace();
      }
  }
}

info indeholder felt=værdi&felt=værdi

den udskriver bare i.s.f. at skrive til fil
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