Geri Dön

Web kazımada kullanılan Python kütüphanelerinin incelenmesi

Examination of Python libraries used in web scraping

  1. Tez No: 938232
  2. Yazar: MURAT ALİ ÖZ
  3. Danışmanlar: DR. ÖĞR. ÜYESİ NAİM KARASEKRETER
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2025
  8. Dil: Türkçe
  9. Üniversite: Afyon Kocatepe Üniversitesi
  10. Enstitü: Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: İnternet ve Bilişim Teknolojileri Yönetimi Ana Bilim Dalı
  12. Bilim Dalı: Belirtilmemiş.
  13. Sayfa Sayısı: 119

Özet

Veri, günümüzde kuruluşlar için önemli bir varlık haline gelmiş ve internet, başlıca veri kaynağı olmuştur. Web kazıma, HTML (Hyper Text Markup Language - Hiper Metin İşaretleme Dili) dokümanlarından yapılandırılmış verileri otomatik olarak çekmeyi sağlar. Bu veriler; ürün ve hizmet bilgilerini toplama, fiyat karşılaştırması yapma, iletişim bilgileri edinme, haber ve blog takibi yapma, müşteri geri bildirimlerini analiz etme gibi çeşitli amaçlar için kullanılabilir. Web kazıma süreci, bir web sayfası ile web robotu arasındaki otomatik veri aktarımını ifade eder. Bu tez çalışmasında, BeautifulSoup, Selenium ve Scrapy gibi web kazımada kullanılan Python kütüphaneleri detaylı olarak incelenmiş, hangi tür web sitelerinde ve hangi amaçlar için daha uygun oldukları belirlenmeye çalışılmıştır. Web kazıma, web sitelerinden otomatik olarak veri toplama tekniği olup, günümüzde veri analizi, makine öğrenimi ve veri madenciliği gibi çeşitli alanlarda kullanılmaktadır. Web sayfalarının yapısını tanımlamak için HTML işaretleme dili kullanılırken, stil özelliklerini tanımlamak için CSS (Cascading Style Sheets - Basamaklı Stil Sayfaları) stil dili kullanılır. Python, web geliştirme, veri bilimi ve yapay zeka gibi birçok alanda kullanılan yüksek seviyeli bir programlama dilidir. BeautifulSoup, Selenium ve Scrapy kütüphaneleri, web kazımada kullanılan başlıca Python kütüphanelerdir. Belirtilen kütüphaneler (BeautifulSoup, Selenium, Scrapy) kullanılarak çeşitli web sitelerinden (emlak ilan sitesi, haber sitesi, online market ve e-ticaret sitesi) veri kazıma kodları yazılmış ve çalışma süreleri ölçülmüştür. Ölçümler, Windows, Linux ve bulut sunucu sistemlerinde ayrı ayrı gerçekleştirilmiştir. Scrapy 'de yazılan kodlar, diğer kütüphanelere göre daha fazla satır içerebilir, ancak daha yapılandırılmış bir yaklaşım sunar. BeautifulSoup, basit ve statik siteler için hızlı sonuçlar verirken, dinamik içerikler için Selenium ve Scrapy daha etkilidir. İşletim sistemleri kodların çalışma sürelerini fazla etkilemezken, bulut sunucudaki kodlar biraz daha yavaş çalışmıştır. BeautifulSoup, veri kazımaya yeni başlayanlar için basit ve kullanıcı dostu bir seçenektir. Statik veya az dinamik siteler için uygundur. Selenium, dinamik içeriğe sahip JavaScript içeriği yoğun olan sitelerden veri çekmek ve kullanıcı etkileşimlerini simüle etmek için güçlü bir araçtır. Scrapy ise, büyük ölçekli projeler ve karmaşık siteler için yüksek performanslı bir araçtır. Bilimsel çalışmalar ve projeler için doğru kütüphanenin seçilmesi, web kazıma tekniklerinin verimliliği ve başarısı için önemlidir. Bu tez, web kazıma kullanılarak yapılan bilimsel çalışmalara rehberlik edecek nitelikte olup, gelecekteki araştırmalar için de referans niteliği taşımaktadır.

Özet (Çeviri)

Data has become a crucial asset for organizations today, with the internet being the primary source of data. Web scraping allows for the automatic extraction of structured data from HTML documents. This data can be used for various purposes such as collecting product and service information, price comparison, obtaining contact details, tracking news and blogs, and analyzing customer feedback. The web scraping process refers to the automatic data transfer between a web page and a web robot. In this thesis, Python libraries used in web scraping, such as BeautifulSoup, Selenium, and Scrapy, have been examined in detail, and their suitability for different types of websites and purposes has been determined. Web scraping is a technique for automatically collecting data from websites and is currently used in various fields such as data analysis, machine learning, and data mining. HTML is used to define the structure of web pages, while CSS is used to define style properties. Python is a high-level programming language used in many fields, including web development, data science, and artificial intelligence. BeautifulSoup, Selenium, and Scrapy are the main Python libraries used in web scraping. Using the specified libraries (BeautifulSoup, Selenium, Scrapy), data scraping codes were written for various websites (real estate listing site, news site, online market, and e-commerce site), and their execution times were measured. Measurements were conducted separately on Windows, Linux, and cloud server systems. Codes written in Scrapy may contain more lines compared to other libraries but offer a more structured approach. BeautifulSoup provides quick results for simple and static sites, while Selenium and Scrapy are more effective for dynamic content. Operating systems do not significantly affect the execution times of the codes, but the codes on the cloud server ran slightly slower. BeautifulSoup is a simple and user-friendly option for beginners in data scraping, suitable for static or minimally dynamic sites. Selenium is a powerful tool for extracting data from sites with dynamic content and heavy JavaScript, capable of simulating user interactions. Scrapy, on the other hand, is a high-performance tool for large-scale projects and complex sites. Selecting the right library for scientific studies and projects is crucial for the efficiency and success of web scraping techniques. This thesis serves as a guide for scientific studies conducted using web scraping and acts as a reference for future research.

Benzer Tezler

  1. Web kazıma ve yarattığı hukuki sorunlar

    Web scraping and the legal issues it causes

    RABİA TELLİOĞLU

    Yüksek Lisans

    Türkçe

    Türkçe

    2025

    Hukukİstanbul Üniversitesi

    Medeni Hukuk Ana Bilim Dalı

    PROF. DR. MUSTAFA AKSU

  2. Web destekli bir eğitim modelinin tasarımı ve uygulamasının değerlendirilmesi

    A web aided education model: designing, implemantation and evaluation

    VOLKAN KANBUROĞLU

    Doktora

    Türkçe

    Türkçe

    2015

    Elektrik ve Elektronik MühendisliğiMarmara Üniversitesi

    Elektrik Eğitimi Ana Bilim Dalı

    DOÇ. DR. YAŞAR BİRBİR

  3. A filter-based feature selection method for web page classification

    Web sayfası sınıflandırması için filtre-tabanlı nitelik seçim yöntemi

    AYŞE YELTEKİN

    Yüksek Lisans

    İngilizce

    İngilizce

    2016

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolÇukurova Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DOÇ. DR. SELMA AYŞE ÖZEL

  4. Effective & efficient methods for web search result diversification

    Web arama cevaplarının çeşitlendirilmesinde etkin ve verimli yöntemler

    AHMET MURAT ÖZDEMİRAY

    Doktora

    İngilizce

    İngilizce

    2015

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolOrta Doğu Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    YRD. DOÇ. DR. İSMAİL SENGÖR ALTINGÖVDE

  5. Harita mühendisliğinde coğrafi/kent bilgi sistemlerinin web-tabanlı öğrenimi

    Web-based learning of geographical/urban information systems in geomatics engineering

    ÖZLEM GÖKPINAR DEMİRCİ

    Yüksek Lisans

    Türkçe

    Türkçe

    2016

    Jeodezi ve FotogrametriErciyes Üniversitesi

    Harita Mühendisliği Ana Bilim Dalı

    DOÇ. DR. ABDURRAHMAN GEYMEN