Rumah > Java > javaTutorial > Bolehkah Java Mencari Google Secara Pemrograman Tanpa API Khusus?

Bolehkah Java Mencari Google Secara Pemrograman Tanpa API Khusus?

Mary-Kate Olsen
Lepaskan: 2024-11-23 14:02:13
asal
1079 orang telah melayarinya

Can Java Programmatically Search Google Without a Dedicated API?

Cara Mencari Google Secara Pengaturcaraan Menggunakan Java API

Artikel ini mengkaji proses mencari Google secara pengaturcaraan, khususnya memfokuskan pada ketersediaan Java API untuk tujuan ini.

Menggunakan Carian Web Google API

Pada asalnya, Google menawarkan API carian web awam yang mengembalikan data format JSON. Walau bagaimanapun, perkhidmatan ini telah ditamatkan. Mulai November 2010, alternatif terbaik ialah menanyakan terus enjin carian Google menggunakan ejen pengguna dan kemudian menghuraikan respons HTML menggunakan parser seperti Jsoup.

Pelaksanaan Java

Pertama, mari kita sediakan pembolehubah dan wujudkan carian URL:

String google = "http://www.google.com/search?q=";
String search = "stackoverflow";
String charset = "UTF-8";
String userAgent = "ExampleBot 1.0 (+http://example.com/bot)"; // Customize for your bot
Salin selepas log masuk

Seterusnya, kami menggunakan Jsoup untuk membuat permintaan HTTP dan menghuraikan HTML:

Elements links = Jsoup.connect(google + URLEncoder.encode(search, charset)).userAgent(userAgent).get().select(".g>.r>a");
Salin selepas log masuk

Akhir sekali, kami mengulangi hasil carian dan mengekstrak tajuk dan URL:

for (Element link : links) {
    String title = link.text();
    String url = link.absUrl("href");
    url = URLDecoder.decode(url.substring(url.indexOf('=') + 1, url.indexOf('&')), "UTF-8");
    if (!url.startsWith("http")) {
        continue; // Ads/news/etc.
    }
Salin selepas log masuk

Atas ialah kandungan terperinci Bolehkah Java Mencari Google Secara Pemrograman Tanpa API Khusus?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan