Rumah >Java >javaTutorial >Cara menggunakan Java untuk menangkap data daripada Internet
Dengan kemunculan era Internet, penjanaan dan perkongsian jumlah data yang besar telah menjadi trend. Untuk menggunakan data ini dengan lebih baik, mempelajari cara merangkak data dari Internet telah menjadi salah satu kemahiran yang diperlukan. Artikel ini akan memperkenalkan cara menggunakan Java untuk melaksanakan data rangkak rangkaian.
1. Pengetahuan asas data mengikis web
Data mengikis web bermaksud mengakses beberapa tapak web yang ditetapkan melalui rangkaian, dan kemudian mendapatkan data yang diperlukan daripada tapak web dan menjalankan penyimpanan. Proses ini sebenarnya adalah proses di mana klien menghantar permintaan kepada pelayan, dan pelayan bertindak balas kepada permintaan dan mengembalikan data.
Apabila pelanggan menghantar permintaan kepada pelayan, anda perlu memberi perhatian kepada perkara berikut:
2 Langkah menggunakan Java untuk menangkap data daripada rangkaian
1 Wujudkan sambungan
Untuk menggunakan Java untuk menangkap data daripada rangkaian, kami mula-mula. perlu mewujudkan pautan Laman web sasaran. Java menyediakan kelas URL Dengan membuat contoh kelas ini, kita boleh mendapatkan objek yang mewakili sambungan. Contohnya:
URL URL = URL baharu("https://www.example.com");
2. Buka sambungan
Selepas membuat sambungan, kita perlu membuka Sambungan ini disediakan untuk menghantar permintaan untuk mendapatkan data yang dikembalikan daripada pelayan. Dalam Java, anda boleh membuka sambungan dan mengembalikan objek URLConnection melalui kaedah URL object openConnection(), contohnya:
URLConnection connection = url.openConnection();
3 maklumat pengepala
Sebelum menghantar permintaan, kami perlu memberikan maklumat pengepala permintaan kepada pelayan. Di Java, ia boleh ditetapkan melalui kaedah setRequestProperty() kelas URLConnection:
connection.setRequestProperty("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML , seperti Gecko) Chrome/83.0.4103.61 Safari/537.36");
Di mana, parameter pertama ialah nama maklumat pengepala dan parameter kedua ialah nilai maklumat pengepala.
4 Hantar permintaan
Selepas menetapkan maklumat pengepala permintaan, kami boleh memanggil kaedah connect() kelas URLConnection untuk mewujudkan sambungan dengan pelayan sasaran. Contohnya:
connection.connect();
5. Dapatkan maklumat respons
Selepas pelayan bertindak balas, kami perlu mendapatkan dan memproses data yang dikembalikan daripada pelayan. URLConnection menyediakan kaedah getInputStream() untuk mengembalikan objek aliran input yang daripadanya data yang dikembalikan boleh dibaca. Contohnya:
InputStream inputStream = connection.getInputStream();
6. Pengkapsulan mod rantai tanggungjawab
Untuk meningkatkan kecekapan penangkapan data dan membuat struktur kod. lebih jelas, Anda boleh mempertimbangkan untuk menggunakan corak rantaian tanggungjawab untuk merangkum keseluruhan proses menangkap data. Contohnya:
DataLoader kelas awam {
private Chain chain; public DataLoader() { chain = new ConnectionWrapper(new HeaderWrapper(new RequestWrapper(new ResponseWrapper(null)))); } public String load(String url) { return chain.process(url); }
}
Antaranya, kelas ConnectionWrapper, HeaderWrapper, RequestWrapper dan ResponseWrapper mewakili empat pautan sambungan, pengepala permintaan, permintaan dan respon masing-masing , mereka semua melaksanakan antara muka Rantaian yang sama, dan dalam pembina, mereka dihantar dari satu ke seterusnya, akhirnya membentuk rantaian tanggungjawab. Kaedah load() menerima rentetan url sebagai parameter dan akhirnya mengembalikan hasil jenis rentetan. Semasa memuatkan, anda hanya perlu memanggil kaedah load() contoh kelas DataLoader.
3. Langkah berjaga-jaga
4. Ringkasan
Artikel ini memperkenalkan cara menggunakan Java untuk menangkap data daripada rangkaian. Perlu diingatkan bahawa pengikisan web adalah operasi intensif sumber Jika sejumlah besar data dikikis secara tidak sengaja, ia boleh memberi tekanan pada pelayan. Oleh itu, pengikisan web perlu dilakukan dengan mematuhi etika internet dan dalam keadaan yang sesuai.
Atas ialah kandungan terperinci Cara menggunakan Java untuk menangkap data daripada Internet. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!