Postingan lainnya
Bagaimana cara deep crawling url dari hitungpersen.com
Halo folk
Saya ingin melakukan crawling url dari situs https://hitungpersen.com/
Dimana prosesnya itu ketika mendapatkan link dari home page di dalam link itu terdapat link lain yang harus saya crawler
<p class="mt-4 text-sky-500 dark:text-skay-400 text-base leading-relaxed">
<a href="https://hitungpersen.com/post/berapa-1-persen-dari-1">
Berapa 1% dari 1?
</a>
</p>
<p class="mt-4 text-sky-500 dark:text-skay-400 text-base leading-relaxed">
<a href="https://hitungpersen.com/post/berapa-2-persen-dari-2">
Berapa 2% dari 2?
</a>
</p>
Misalnya salah satu link di atas diakses lagi, maka akan terdapat berbagai link lagi seperti :
<h2 class="mt-2 text-xl font-semibold text-gray-900 dark:text-white">Hasil hitung persen berikutnya</h2>
<p class="mt-4 text-sky-500 dark:text-skay-400 text-base leading-relaxed">
<a href="https://hitungpersen.com/post/berapa-2-persen-dari-1">
Berapa 2% dari 1?
</a>
</p>
<h2 class="mt-2 text-xl font-semibold text-gray-900 dark:text-white">Hasil hitung nomor berikutnya</h2>
<p class="mt-4 text-sky-500 dark:text-skay-400 text-base leading-relaxed">
<a href="https://hitungpersen.com/post/berapa-1-persen-dari-2">
Berapa 1% dari 2?
</a>
</p>
Bagaimana cara mengambil seluruh link nya dengan bantuan python? saya sudah coba membuatnya, namun hanya ilnk di home page saja yang berhasil diambil
Terimakasih
0
2 Jawaban:
Hi dalam crawling, kamu perlu:
- Analisa website yang kamu tuju. Lihat di mana data yang kamu mau ambil berada
- Maka targetkan parsing kamu dengan lokasi CSS/tag tersebut
- Ada kemungkinan lain jika link tidak terbaca , bisa jadi ia dari request Javascript (tidak terload langsung) karena itu kamu perlu menganalisa request JS yang ada di web tersebut
0
Langkah 1: Install Libraries Pastikan Anda telah menginstal requests dan bs4:
pip install requests beautifulsoup4
Langkah 2: Script Crawling
import requests
from bs4 import BeautifulSoup
def get_links(url):
"""Mengambil semua link dari URL yang diberikan."""
links = []
r = requests.get(url)
soup = BeautifulSoup(r.text, 'html.parser')
for link in soup.find_all('a', href=True):
links.append(link['href'])
return links
# URL homepage
home_page = 'https://hitungpersen.com/'
# Mengambil link dari homepage
home_links = get_links(home_page)
# Setiap link di home page kemudian di crawl untuk link tambahan
all_links = set(home_links) # Menggunakan set untuk menghindari duplikat
for link in home_links:
if link.startswith(home_page): # Memastikan link adalah bagian dari situs
additional_links = get_links(link)
all_links.update(additional_links)
# Menampilkan semua link yang telah di-crawl
for link in all_links:
print(link)
0