Schrottpraxis mit Java ①

Scraping mit Java ①

Referenz / Site IT-Spielzeugkiste (https://ittoybox.com/archives/385) Sume und Brille (http://tm8r.hateblo.jp/entry/2013/11/26/125937) Mr. Terry③ (https://qiita.com/Terry3/items/0c1829130111967773bf) Herr takahiroSakamoto (https://qiita.com/takahiroSakamoto/items/c2b269c07e15a04f5861)

Rückgrat

Unerfahrene Person Ich habe gerade Java-Grammatik gelernt. Da es in Gedenkform betrieben wird, bedeutet Nachahmung nicht, dass es gut läuft. Vielmehr möchte ich alle um Unterricht bitten.

Kratzvorbereitung

Ich habe gehört, dass jsoup zum Schaben verwendet werden sollte, also habe ich mich darauf vorbereitet, es zu verwenden. Ich benutze ein Eclipse iPhone.

Laden Sie die JAR-Datei von der folgenden Site herunter (https://jsoup.org/download)

Erstellen Sie das Paket "Scraping" und erstellen Sie die "lib" -Datei direkt darunter. Kopieren Sie die vorherige JAR-Datei in die "lib" -Datei. 1.PNG

Dann bestehen Sie den Klassenpass. Dieser Bereich wird in "IT Toy Box" mit einem Bild erklärt. Ich bin sehr dankbar.

Schrottbeschreibung.

Zunächst aus dem Import der eingeführten Suppe

import java.io.IOException;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

Es scheint, dass die jsoup-Anweisung in eine try-catch-Anweisung eingeschlossen werden muss, sodass ich gleichzeitig auch IOException importiert habe.

Nun, es ist ein Ziel des Scrapings, aber es gibt noch viele Teile, die ich nicht gut verstehe. Lassen Sie uns also zuerst die oberste Seite von "Yahoo! Japan" kratzen.

	public static void main(String[] args) {
		
		//try-Brauchen Fang Anweisung
		try {
			
			//Document A = Jsoup.connect("url").get();Scraping Ziel auf URL
			Document doc = Jsoup.connect("https://www.yahoo.co.jp/").get();
			
			//Elements B = A.select("Etikett"); この形でソースに含まれるEtikettで指定された範囲を書き出す。
			Elements elm = doc.select("title");
			
			//Für Aussage erweitert
			for(Element elms : elm) {
				String title = elms.text();
				System.out.println(title); //Ergebnis Yahoo!JAPAN
			}
		
			//Ausnahmebehandlung
		}catch(IOException e) {
			e.printStackTrace();
		}
	}
}

Es scheint, dass jsoup eine Verbindungsmethode und eine Auswahlmethode hat und es möglich ist, URL bzw. Tag anzugeben. Durch Angabe des URL-Tags können Sie unbenutzte Dinge wie Javascript leicht entfernen.

Ich verstehe, ich habe es irgendwie herausgefunden, ich habe auf anderen Seiten experimentiert.

Wie auch immer, ich werde die Seite mit dem Titel 2018 Lecture List der Japan Archaeological Association abkratzen, um den Unterschied im Tabellenformat leichter zu verstehen. Zielseite (http://archaeology.jp/learning/university/2018kougiichiran/#)

Der Code ist fast der gleiche

public static void main(String[] args) {

//try-catch文が必要 try {

// Dokument A = Jsoup.connect ("url"). Get (); Scraping-Ziel auf URL Document doc = Jsoup.connect("http://archaeology.jp/learning/university/2018kougiichiran/#").get();

// Elemente B = A.select ("tag"); Schreiben Sie den Bereich aus, der durch das in der Quelle enthaltene Tag in diesem Formular angegeben wird. Elements elm = doc.select("tbody");

//拡張for文 for(Element elms : elm) { String title = elms.text(); System.out.println(title); }

//例外処理 }catch(IOException e) { e.printStackTrace(); } }

In diesem Fall lautet die Ergebnisausgabe an die Konsole

● Kokugakuin Universität Hokkaido Junior College Archäologie A / B [Sommerkonzentration] Gleichzeitiger Dozent Takashi Aoki ● Archäologie der Sapporo Gakuin Universität A (erste Hälfte) Speziell ernannter Dozent Yoshiaki Otsuka Archäologie B (zweite Hälfte) Teilzeitdozent Kenichiro Koshida Archäologie Akademische Forschungsmethode (spät) Speziell ernannter Dozent Yoshiaki Otsuka Archäologische Ausbildung Professor Isao Usuki Speziell ernannter Dozent Yoshiaki Otsuka Einführung in kulturelle Eigenschaften (spät) Professor Isao Usuki Nördliche Geschichte und Kultur Teilzeitdozent Gen Sawai Hokkaido Geschichtsstudie B (spät) Professor Isao Usuki ・ ・ ・ ・

Die Form ist nebeneinander aufgereiht.

Das ist also schwer zu sehen

// Elemente B = A.select ("tag"); Schreiben Sie den Bereich aus, der durch das in der Quelle enthaltene Tag in diesem Formular angegeben wird. Elements elm = doc.select("tbody tr"); Wenn Sie ein Tag hinzufügen, das die Zeile von ("tbody tr") trennt)

● Kokugakuin University Hokkaido Junior College
Abteilung für nationale Literatur
Archäologie A / B [Sommerkonzentration] Gleichzeitiger Dozent Kei Aoki ● Sapporo Gakuin Universität Archäologie A (erste Hälfte) Speziell ernannter Dozent Yoshiaki Otsuka Archäologie B (spät) Teilzeitdozent Kenichiro Koshida Archäologische Forschungsmethode (spät) Speziell ernannter Dozent Yoshiaki Otsuka Professor für archäologische Ausbildung Isao Usuki ...

Es scheint, dass es fast entsprechend der Homepage exportiert werden kann.

Einmal hier geübt ① Fertig. Das ultimative Ziel ist es, Informationen über Pferderennen zu kratzen. Grundsätzlich stört Javascript, so wie es zu lesen scheint, scheint der Punkt zu sein.

Recommended Posts