Web kazımada kullanılan Python kütüphanelerinin incelenmesi
Examination of Python libraries used in web scraping
- Tez No: 938232
- Danışmanlar: DR. ÖĞR. ÜYESİ NAİM KARASEKRETER
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2025
- Dil: Türkçe
- Üniversite: Afyon Kocatepe Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: İnternet ve Bilişim Teknolojileri Yönetimi Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- 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
- 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
2015
Elektrik ve Elektronik MühendisliğiMarmara ÜniversitesiElektrik Eğitimi Ana Bilim Dalı
DOÇ. DR. YAŞAR BİRBİR
- 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
2016
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolÇukurova ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DOÇ. DR. SELMA AYŞE ÖZEL
- 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
2015
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolOrta Doğu Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
YRD. DOÇ. DR. İSMAİL SENGÖR ALTINGÖVDE
- 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
2016
Jeodezi ve FotogrametriErciyes ÜniversitesiHarita Mühendisliği Ana Bilim Dalı
DOÇ. DR. ABDURRAHMAN GEYMEN