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ı: Bilgisayar Ana Bilim Dalı (disiplinlerarası)
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: Belirtilmemiş.
Ö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
- Makine öğrenmesi kullanarak Türkiye'de elektrikli araç şarj istasyonlarının potansiyel kullanım performansının mekânsal tahmini
Spatial estimation of potential utilization performance of electric vehicle charging stations in Türkiye using machine learning methods
SERKAN TANRIVERDİ
Yüksek Lisans
Türkçe
2025
İstanbul Teknik ÜniversitesiGeomatik Mühendisliği Ana Bilim Dalı
Yükleniyor...
- Genetik algoritmaları kullanarak web sayfalarından veri çıkarımı için otomatik olarak düzenli ifade oluşturma
Automatically generating regular expressions for data extraction from web pages using genetic algorithms
CANAN ASLANYÜREK
- Elektrikli araçların kullanıcı tercihlerine göre sınıflandırılması: hibrit bir yaklaşım
Classification of electric vehicles based on user preference: a hybrid approach
MEHMET DEMİR
Yüksek Lisans
Türkçe
2025
İstanbul Teknik ÜniversitesiEndüstri Mühendisliği Ana Bilim Dalı
Yükleniyor...
- Web scraping in ecommerce and designing a blocking prevention method for web scraping
Eticarette web kazıma ve web kazıma için engellemeden kaçınan bir yöntem tasarlanması
ANUAR SAKENOV
Yüksek Lisans
İngilizce
2023
Bahçeşehir ÜniversitesiBüyük Veri Analitiği ve Yönetimi Ana Bilim Dalı
Yükleniyor...
- Farklılaştırılmış öğretim stratejisi olarak kullanılan dijital öykü kartlarının öğrenme güçlüğü ve üstün zekalı öğrencilerin öykü yazma becerilerine etkisi
The effect of digital story cards used as a differentiated instruction strategy on the story-writing skills of students with learning disabilities and gifted students
İREM AKÇAYIR