كيف يمكنني الحصول على محتوى HTML من موقع محدد على جانب الملقم باستخدام جافا؟
-
06-07-2019 - |
سؤال
وإنني تصميم أحد التطبيقات التي تحتاج لتحميل محتوى HTML من موقع محدد على جانب الملقم باستخدام جافا. كيف يمكنني حل هذه المشكلة؟
والتحيات،
المحلول
ولقد استخدمت أباتشي العموم HttpClient وإصلاحه مكتبة للقيام بذلك. إلقاء نظرة هنا: http://hc.apache.org/httpclient-3.x/tutorial. أتش تي أم أل
وهو أكثر ميزة الغنية من دعم العملاء JDK HTTP.
نصائح أخرى
وإذا كان كل ما تحتاجه هو قراءة رابط لا تحتاج إلى اللجوء إلى المكتبات طرف ثالث، وقد بنيت جافا دعما لاسترداد عناوين المواقع.
import java.net.*;
import java.io.*;
public class URLConnectionReader {
public static void main(String[] args) throws Exception {
URL yahoo = new URL("http://www.yahoo.com/");
URLConnection yc = yahoo.openConnection();
BufferedReader in = new BufferedReader(
new InputStreamReader(
yc.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);
in.close();
}
}
إذا كان بي، هل يمكن استخدام الضفيرة ، ولكن منذ انها جافا، يمكنك استخدام <ل أ href = "http://java.sun.com/j2se/1.4.2/docs/api/java/net/HttpURLConnection.html" يختلط = "نوفولو noreferrer"> HttpURLConnection ، وأنا وجدت للتو على هذا السؤال:
وjava.io.BufferedReader الاستيراد؛ استيراد java.io.IOException. استيراد java.io.InputStreamReader. استيراد java.net.MalformedURLException. استيراد java.net.URL. استيراد java.net.URLConnection؛
والطبقة العامة URLConetent { الجمهور ساكنة باطلة الرئيسي (سلسلة [] وسائط) {
URL url;
try {
// get URL content
String a="http://localhost:8080//TestWeb/index.jsp";
url = new URL(a);
URLConnection conn = url.openConnection();
// open the stream and put it into BufferedReader
BufferedReader br = new BufferedReader(
new InputStreamReader(conn.getInputStream()));
String inputLine;
while ((inputLine = br.readLine()) != null) {
System.out.println(inputLine);
}
br.close();
System.out.println("Done");
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
و}