Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » Logik » Daten aus Website einbauen » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Daten aus Website einbauen
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Björn
unregistriert
Daten aus Website einbauen Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Meine Frage:
Hallo Leute,

eine weitere Frage: Ist es eigentlich möglich, in Java bestimmte Websiten einzubauen? Ich meine damit, dass dann die einzelnen Wörter vielleicht in einem Array gespeichert werden und dann die Website ausgewertet werden kann?

Meine Ideen:
Vielen Dank :-)
08.08.2015 22:37
Björn
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Programmiersprache ist JAVA (Ich vergesse es immer wieder :-))
08.08.2015 22:37
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Was meinst du mit einbauen?
Willst du den Inhalt auslesen und Informationen herausziehen?
Willst du in deinem Programm einen Browser anzeigen?

Das habe ich bisher beides nur in C# gemacht, aber bei ersterem bin ich mir sicher, dass es auch in Java keine große Kunst ist (dynamisch mit JavaScript geladener Inhalt könnte etwas knifflig werden).

Eine detailliertere Antwort gibt es erst, wenn du die Frage spezifizierst.

__________________
Syntax Highlighting fürs Board (Link)
09.08.2015 07:34 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Björn
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Willst du den Inhalt auslesen und Informationen herausziehen? Willst du in deinem Programm einen Browser anzeigen?


Genau, ich möchte den Inhalt auslesen lassen. Ein Browser soll nicht angezeigt werden.
09.08.2015 12:04
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich habe mal etwas von hier zusammenkopiert: http://stackoverflow.com/questions/19293...webpage-in-java
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;

public class Main {

	public static void main(String[] args) {
		try {
			System.out
					.println(getUrlSource("http://www.informatikerboard.de/board/thread.php?postid=10227#post10227"));
		} catch (IOException e) {
			System.out.println("Lesefehler");
		}
	}

	private static String getUrlSource(String urlString) throws IOException {
		StringBuilder result = new StringBuilder();
		URL url = new URL(urlString);
		URLConnection spoof = url.openConnection();

		spoof.setRequestProperty("User-Agent",
				"Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818)");
		BufferedReader in = new BufferedReader(new InputStreamReader(
				spoof.getInputStream()));
		String line = "";

		while ((line = in.readLine()) != null) {

			result.append(line + "\n");
		}
		in.close();
		return result.toString();
	}
}

Der Useragenet entspricht zwar nicht dem, was ich verwende, funktioniert aber. Wenn ich die Zeile auskommentiere, klappt es nicht mehr.

__________________
Syntax Highlighting fürs Board (Link)
09.08.2015 13:11 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Björn
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Vielen lieben Dank :-)
10.08.2015 10:44
Mike
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Guten Morgen,

bietet Java die Möglichkeit, ausgelesenen Code auf eine einheitliche Schriftart zu bekommen? Das Problem ist: Eine Website wird ausgelesen und nach einem bestimmten Char gesucht. Bei einem Quelltext wird das Zeichen gefunden, bei einer anderen Website mit dementsprechend anderen Quelltext findet das Programm das gleiche Zeichen nicht. Daher kann es nur an unterschiedlichen Schriftarten, etc. liegen?

Vielen Dank.
17.04.2016 05:58
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Bei Code handelt es sich um reinen ASCII Text. Dort gibt es keine Schriftart, die Darstellung (Syntaxhighlighting) ist Sache des Editors.
Gib Links zu dein Seiten und den Text, nach dem du suchst an. Dann kann ich dir vielleicht sagen, warum es nicht klappt.

__________________
Syntax Highlighting fürs Board (Link)
17.04.2016 06:36 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Mike
Grünschnabel


Dabei seit: 17.04.2016
Beiträge: 2

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Leider habe ich zu wenige Beiträge verfasst um Links zu posten, deshalb habe ich das www und de entfernt. Mein Problem:

Ich versuche die Zeiten (sprich 09:30 etc.) auszulesen. Daher habe ich den Doppelpunkt als Zeichen suchen lassen und dann mit Substrings gearbeitet. Allerdings finden sich auf die ganze Seite verteilt nur zwei Doppelpunkte, müssten aber viel mehr sein.

Hier auch mein Code dazu:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
package read_website_file;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;

public class Read_Website_File 
{
    public static void main(String[] args) 
    {
	try 
        {
            getUrlSource("hof-university./studierende/info-service/stundenplaene.html?tx_stundenplan_stundenplan[action]=list&tx_stundenplan_stundenplan[controller]=Stundenplan&tx_stundenplan_stundenplan[save]=&tx_stundenplan_stundenplan[studiengang]=MI&tx_stundenplan_stundenplan[semester]=4_SS_2016&tx_stundenplan_stundenplan[view]=alle#jpoint");
	} 
        catch (IOException e) 
        {
            System.out.println("Lesefehler");
	}
    }

    private static void getUrlSource(String urlString) throws IOException 
    {
        StringBuilder result = new StringBuilder();
	URL url = new URL(urlString);
	URLConnection spoof = url.openConnection();
	spoof.setRequestProperty("User-Agent","Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818)");
	BufferedReader in = new BufferedReader(new InputStreamReader(spoof.getInputStream()));
	String line = "";
        int i=0; 
        
	while ((line = in.readLine()) != null) 
        {
            result.append(line);
            if (result.charAt(i)==':')
            {
                System.out.println(result.substring(i-2,i+3));
            }
            ++i;
        }
    }
}

Mike hat dieses Bild (verkleinerte Version) angehängt:
Bildschirmfoto 2016-04-17 um 06.57.21.png

17.04.2016 06:58 Mike ist offline Beiträge von Mike suchen Nehmen Sie Mike in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;

public class Read_Website_File
{
	public static void main(String[] args)
	{
		try
		{
			String page = getUrlSource("http://www.hof-university.de/studierende/info-service/stundenplaene.html?tx_stundenplan_stundenplan[action]=list&tx_stundenplan_stundenplan[controller]=Stundenplan&tx_stundenplan_stundenplan[save]=&tx_stundenplan_stundenplan[studiengang]=MI&tx_stundenplan_stundenplan[semester]=4_SS_2016&tx_stundenplan_stundenplan[view]=alle#jpoint");
			while (page.contains("<span class=\"ttm_date\">")) {
				page = page.substring(page.indexOf("<span class=\"ttm_date\">") + "<span class=\"ttm_date\">".length(), page.length() - 1);
				System.out.println(page.substring(0, page.indexOf("</span>")).replace("\n", ""));
			}
		} catch (Exception e)
		{
			System.out.println(e.toString());
		}
	}

	private static String getUrlSource(String urlString) throws IOException
	{
		StringBuilder result = new StringBuilder();
		URL url = new URL(urlString);
		URLConnection spoof = url.openConnection();
		spoof.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818)");
		BufferedReader in = new BufferedReader(new InputStreamReader(spoof.getInputStream()));
		String line = "";

		while ((line = in.readLine()) != null) {

			result.append(line + "\n");
		}
		in.close();
		return result.toString();
	}
}


__________________
Syntax Highlighting fürs Board (Link)
17.04.2016 07:13 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Mike
Grünschnabel


Dabei seit: 17.04.2016
Beiträge: 2

großes Grinsen Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Du bist der Wahnsinn, vielen Dank für die Hilfe Daumen hoch
17.04.2016 07:22 Mike ist offline Beiträge von Mike suchen Nehmen Sie Mike in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Theoretische Informatik » Logik » Daten aus Website einbauen