Bilişim dünyasına kaliteli, özgün ve Türkçe içerikler kazandırmayı hedefleyen bir platform..

friends friends friends

Python BeautifulSoup Kütüphanesi ile Veri Kazıma

Python BeautifulSoup kütüphanesini kullanarak, hedef bir web sitesinin HTML veya XML kodlarını ayrıştırarak ihtiyacınız olan verileri elde edebilirsiniz.

Senaryoya göre bir mail listesi yapıp otomatik olarak toplu mail göndermek istediğiniz bir hedef kitleniz olsun. Örneğin: Bir web sitesindeki firmaların mail adreslerini toplamak istediğinizi varsayalım. Hedeflediğiniz bir web sitesini seçip bu kütüphane ile tüm firmaların mail adreslerini toplayıp onlara reklam mailleri atabilirsiniz. Bunu yapmanıza tek engel ise teknokent sitesinin bunu yapmanız için daha önceden önlem almış olmasıdır.

Bildiğiniz üzere web siteleri içerdiği tüm bilgileri çeşitli HTML veya XML kodları içinde saklamaktadır. Amacımız bu kodları okumak ve bu kodların içinde sadece bilgileri temizleyip çıkarmaktır. Bunun için Python'da kodlamaya başlayalım:

1- Kütüphaneleri İndirme

#kütüphaneleri indirelim
import requests #web sitesinden istek istemek için
from bs4 import BeautifulSoup
import re #regex için

2- Web Adresini Belirleme

İkinci Adım olarak Web sitesinin adresini belirleyelim:

URL = "https://www.siteadi.com/sayfaadi"
page = requests.get(URL)

3- Html parser ile page Değişkenindeki İçeriği Ayrıştırma

Requests ile web sitemize istek gönderelim ve bağlanalım

bs = BeautifulSoup(page.content, "html.parser")

4- bs Değişkenimize Göz Atalım

print(bs)

Sadece İstediğimiz Kısımları Filtreleyelim

results = bs.findAll("div", {"class": "form-comp inp_05"})

Aldığımız Verileri Ekrana Basalım

print(results)

Veriyi regex ile Temizleyelim

results = str(results)
results = results.replace("','")
words = re.findall(r">\S+</a>",results)
list1=[]
for i in words:
 i = i.replace(">","")
 i = i.replace("</a","")
 i = i.split(",")
 if len(i)>1:
 for x in range(len(i)):
 list1.append(i[x])
 else:
 list1.append(i[0])

Temizlediğimiz Veriye Bakalım

print(list1)
BeautifulSoup Veri Kazıma
0 Beğeni
Python Veri
Önceki Yazı

Oyun Terimleri (Sözlüğü)

20 Mart 2023 tarihinde yayınlandı.
Sonraki Yazı

PDF ChatBot

20 Mart 2023 tarihinde yayınlandı.
arrow