Rumah > pembangunan bahagian belakang > Tutorial Python > Kikis Hasil Carian Google Menggunakan Python

Kikis Hasil Carian Google Menggunakan Python

Patricia Arquette
Lepaskan: 2025-01-01 00:50:09
asal
944 orang telah melayarinya

Kikis Hasil Carian Google Menggunakan Python

Google menyimpan sejumlah besar data untuk perniagaan dan penyelidik. Ia melakukan lebih 8.5 bilion carian harian dan menguasai 91% bahagian pasaran enjin carian global.

Sejak debut ChatGPT, data Google telah digunakan bukan sahaja untuk tujuan tradisional seperti penjejakan kedudukan, pemantauan pesaing dan penjanaan utama tetapi juga untuk membangunkan model LLM lanjutan, melatih model AI dan meningkatkan keupayaan Pemprosesan Bahasa Semulajadi ( model NLP.

Mengikis Google, walau bagaimanapun, bukanlah mudah untuk semua orang. Ia memerlukan pasukan profesional dan infrastruktur yang teguh untuk mengikis pada skala.

Scrape Google Search Results Using Python

Dalam artikel ini, kita akan belajar mengikis Hasil Carian Google menggunakan Python dan BeautifulSoup. Ini akan membolehkan anda membina alatan dan model anda sendiri yang mampu memanfaatkan data Google pada skala besar.

Jom mulakan!

Apakah Hasil Carian Google?

Hasil Carian Google ialah penyenaraian yang muncul di Google berdasarkan pertanyaan pengguna yang dimasukkan dalam bar carian. Google banyak menggunakan NLP untuk memahami pertanyaan ini dan memberikan pengguna hasil yang berkaitan. Hasil ini selalunya termasuk coretan yang ditampilkan sebagai tambahan kepada hasil organik, seperti gambaran keseluruhan AI terkini, bahagian Orang Juga Bertanya, Carian Berkaitan dan Graf Pengetahuan. Elemen ini memberikan maklumat ringkas dan berkaitan kepada pengguna berdasarkan pertanyaan mereka.

Aplikasi Mengikis Data Carian Google

Data Carian Google mempunyai pelbagai aplikasi:

  • Membina kedudukan dan penjejak kata kunci untuk tujuan SEO.
  • Mencari perniagaan tempatan.
  • Membina enjin LLM.
  • Menemui topik yang meletup untuk aliran yang berpotensi pada masa hadapan.

Mengapa Python untuk mengikis Google?

Python ialah bahasa serba boleh dan teguh yang menyediakan konfigurasi jabat tangan HTTP yang berkuasa untuk mengikis tapak web yang mungkin bergelut dengan bahasa lain atau mempunyai kadar kejayaan yang lebih rendah. Memandangkan populariti model AI yang dilatih pada data yang dikikis web semakin meningkat, perkaitan Python dalam topik pengikisan web terus meningkat dalam komuniti pembangun.

Selain itu, pemula yang ingin mempelajari Python sebagai kemahiran mengikis web boleh memahaminya dengan mudah kerana sintaksnya yang ringkas dan kejelasan kodnya. Selain itu, ia mempunyai sokongan komuniti yang besar pada platform seperti Discord, Reddit, dll., yang boleh membantu dengan sebarang tahap masalah yang anda hadapi.

Bahasa boleh skala ini cemerlang dalam prestasi mengikis web dan menyediakan rangka kerja yang berkuasa seperti Scrapy, Requests dan BeautifulSoup, menjadikannya pilihan terbaik untuk mengikis Google dan tapak web lain berbanding bahasa lain.

Mengikis Hasil Carian Google Dengan Python

Bahagian ini akan mengajar kami membuat skrip Python asas untuk mendapatkan semula 10 hasil carian Google yang pertama.

Keperluan

Untuk mengikuti tutorial ini, kami perlu memasang perpustakaan berikut:

  • Permintaan — Untuk menarik data HTML daripada URL Carian Google.

  • BeautifulSoup — Untuk memperhalusi data HTML dalam format berstruktur.

Persediaan

Persediaan adalah mudah. Cipta fail Python dan pasang pustaka yang diperlukan untuk bermula.

Jalankan arahan berikut dalam folder projek anda:

    touch scraper.py
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Dan kemudian pasang perpustakaan.

    pip install requests
    pip install beautifulsoup4
Salin selepas log masuk
Salin selepas log masuk

Proses

Kami telah selesai dengan persediaan dan mempunyai semua perkara untuk bergerak ke hadapan. Kami akan menggunakan perpustakaan Permintaan dalam Python untuk mengekstrak HTML mentah dan BeautifulSoup untuk memperhalusinya dan mendapatkan maklumat yang dikehendaki.

Tetapi apakah "maklumat yang dikehendaki" di sini?

Scrape Google Search Results Using Python

Data yang ditapis akan mengandungi maklumat ini:

  • Tajuk
  • Pautan
  • Pautan Dipaparkan
  • Penerangan
  • Kedudukan keputusan

Biar kami mengimport perpustakaan kami yang dipasang dahulu dalam fail scraper.py.

    from bs4 import BeautifulSoup
    import requests
Salin selepas log masuk
Salin selepas log masuk

Kemudian, kami akan membuat permintaan GET pada URL sasaran untuk mengambil data HTML mentah daripada Google.

headers={'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.361681276786'}
    url='https://www.google.com/search?q=python+tutorials&gl=us'
    response = requests.get(url,headers=headers)
    print(response.status_code)
Salin selepas log masuk

Melalui pengepala adalah penting untuk menjadikan pengikis kelihatan seperti pengguna semula jadi yang baru sahaja melawat halaman carian Google untuk mendapatkan maklumat.

Kod di atas akan membantu anda dalam menarik data HTML daripada pautan Carian Google. Jika anda mendapat kod status 200, itu bermakna permintaan itu berjaya. Ini melengkapkan bahagian pertama mencipta pengikis untuk Google.

Dalam bahagian seterusnya, kami akan menggunakan BeautifulSoup untuk mengeluarkan data yang diperlukan daripada HTML.

    soup = BeautifulSoup(response.text, ‘html.parser’)
Salin selepas log masuk

Ini akan mencipta objek BS4 untuk menghuraikan respons HTML dan dengan itu kami akan dapat menavigasi dengan mudah di dalam HTML dan mencari sebarang elemen pilihan dan kandungan di dalamnya.

Untuk menghuraikan HTML ini, kami perlu terlebih dahulu memeriksa Halaman Carian Google untuk menyemak corak biasa yang boleh ditemui di lokasi DOM hasil carian.

Scrape Google Search Results Using Python

Jadi, selepas memeriksa, kami mendapati bahawa setiap hasil carian adalah di bawah bekas div dengan kelas g. Ini bermakna, kita hanya perlu menjalankan gelung pada setiap bekas div dengan kelas g untuk mendapatkan maklumat di dalamnya.

Sebelum menulis kod, kami akan mencari lokasi DOM untuk tajuk, penerangan dan pautan daripada HTML.

Jika anda memeriksa tajuk, anda akan mendapati bahawa ia terkandung dalam teg h3. Daripada imej, kita juga dapat melihat bahawa pautan itu terletak dalam atribut href bagi teg sauh.

Scrape Google Search Results Using Python

Pautan yang dipaparkan atau pautan petikan boleh didapati di dalam teg petikan.

Scrape Google Search Results Using Python

Dan akhirnya, penerangan disimpan di dalam bekas div dengan kelas VwiC3b.

Scrape Google Search Results Using Python

Membungkus semua entiti data ini ke dalam satu blok kod:

    touch scraper.py
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kami mengisytiharkan tatasusunan hasil organik dan kemudian menggelungkan semua elemen dengan kelas g dalam HTML dan menolak data yang dikumpul ke dalam tatasusunan.

Menjalankan kod ini akan memberikan anda hasil yang diingini yang boleh anda gunakan untuk pelbagai tujuan termasuk penjejakan kedudukan, penjanaan petunjuk dan mengoptimumkan SEO tapak web.

    pip install requests
    pip install beautifulsoup4
Salin selepas log masuk
Salin selepas log masuk

Jadi, begitulah cara skrip Google Scraping asas dicipta.

Namun, ada CATCH. Kami masih tidak boleh bergantung sepenuhnya pada kaedah ini kerana ini boleh mengakibatkan sekatan IP kami oleh Google. Jika kami ingin mengikis hasil carian secara berskala, kami memerlukan rangkaian proksi premium dan bukan premium yang luas serta teknik lanjutan yang boleh membolehkan perkara ini berlaku. Di situlah API SERP berperanan!

Mengikis Google Menggunakan API SERP ApiForSeo

Kaedah lain untuk mengikis Google menggunakan API SERP khusus. Ia lebih dipercayai dan tidak membenarkan anda disekat dalam proses mengikis.

Persediaan untuk bahagian ini adalah sama, cuma kami perlu mendaftar di ApiForSeo untuk mendapatkan Kunci API kami yang akan memberikan kami akses kepada API SERPnya.

Mendapatkan Bukti Kelayakan API Daripada ApiForSeo

Scrape Google Search Results Using Python

Selepas mengaktifkan akaun, anda akan diubah hala ke papan pemuka di mana anda akan mendapat Kunci API anda.

Scrape Google Search Results Using Python

Anda juga boleh menyalin kod dari papan pemuka itu sendiri.

Menyediakan kod kami untuk mengikis hasil carian

Kemudian, kami akan membuat permintaan API pada pertanyaan rawak untuk mengikis data melalui API SERP ApiForSeo.

    from bs4 import BeautifulSoup
    import requests
Salin selepas log masuk
Salin selepas log masuk

Anda juga boleh mencuba sebarang pertanyaan lain. Jangan lupa masukkan Kunci API anda ke dalam kod jika tidak, anda akan menerima ralat 404.

Menjalankan kod ini dalam terminal anda akan memberi anda hasil serta-merta.

    touch scraper.py
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Data di atas mengandungi pelbagai perkara, termasuk tajuk, pautan, coretan, perihalan dan coretan yang ditampilkan seperti pautan tapak lanjutan. Anda juga akan mendapat coretan ciri lanjutan seperti Orang Juga Diminta, Graf Pengetahuan, Kotak Jawapan, dsb., daripada API ini.

Kesimpulan

Sifat perniagaan berkembang dengan pantas. Jika anda tidak mempunyai akses kepada data tentang aliran berterusan dan pesaing anda, anda berisiko ketinggalan di belakang perniagaan baru muncul yang membuat keputusan strategik terdorong data pada setiap langkah. Oleh itu, adalah penting bagi perniagaan untuk memahami perkara yang berlaku dalam persekitarannya dan Google boleh menjadi salah satu sumber data terbaik untuk tujuan ini.

Dalam tutorial ini, kami belajar cara mengikis hasil carian Google menggunakan Python. Jika anda mendapati blog ini membantu, sila kongsikannya di media sosial dan platform lain.

Terima kasih!

Atas ialah kandungan terperinci Kikis Hasil Carian Google Menggunakan Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
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