Colab ve reklam araçlarını Kullanarak Özel Bir Tarayıcı Nasıl Oluşturulur
Yayınlanan: 2022-05-25Bu videoda, Google Colab, Advertools ve diğer birkaç Python kitaplığını kullanarak kendi özel tarayıcımızı nasıl oluşturabileceğimizden bahsedeceğiz. Korkmadan veya kafayı yemeden önce, yapma. Derin bir nefes al. İyi olacak. Kodlayıcı olduğumu bile iddia etmiyorum, ama oldukça iyi olduğum şey kopyalayıp yapıştırmak. Bu Ctrl+C düğmesini benim kadar iyi kullanabileceğini biliyorum. Şimdi kendi özel SEO tarayıcımızı nasıl oluşturabileceğimize ve bazı benzersiz sorunları çözmemize yardımcı olması için onu nasıl çalıştırabileceğimize bir göz atalım.
Kaynaklar
- Colab'a buradan erişin.
- Reklam Araçları hakkında daha fazla bilgiyi buradan edinebilirsiniz.
Video Transkript:
Google Colab'ın yanı sıra Advertools, Python kitaplığını kullanarak özel bir tarayıcıyı nasıl oluşturabileceğimize bakalım.
SEO Paletli (Örümcek) nedir?
Tarayıcılar, bir arama motorunun yaptığı gibi web sitesi sayfalarını tarayabilen araçlardır ve değerli SEO bilgileri edinmemize yardımcı olur. Web sitesini, Google, Bing veya diğer arama motorlarının sitemizi nasıl göreceğini görmemize yardımcı olur. Bunu yapan araçlar var. Bunu yapan çok sayıda araç var, en popüleri muhtemelen Screaming Frog SEO Spider'dır ve bu, her zaman sevdiğimiz ve kullandığımız bir araçtır, ancak bazen özel bir çözüme ihtiyacımız vardır.
Neden Kendi Tarayıcınızı Oluşturursunuz?
Çoğu 'hazır' tarayıcı harika şeyler yapar, ancak bazen yanıtlanması gereken belirli bir sorunuz vardır ve tüm çıktıları kontrol etmek için özel bir tarayıcı oluşturabilirsiniz. Yalnızca istediğiniz veya ihtiyacınız olan verileri alırsınız. Bu şekilde, bir araç kurulumu tarafından kısıtlanmanız gerekmez, ancak Colab ve Python.
Reklam Araçları nedir?
Advertools, birçok şey yapmanızı sağlayan bir Python kütüphanesidir. Web sitelerini tarayabilir, arama motoru pazarlama kampanyalarınız için anahtar kelimeler oluşturabilir, metin reklamları oluşturabilir, SERP'leri analiz edebilir, sosyal medya gönderileri hakkında bilgi edinebilir ve çok daha fazlasını yapabilirsiniz. Son derece esnek bir kütüphanedir. Bir sürü harika şey yapar ve kullanımı oldukça basittir.
Kendime programcı demezdim. Kopyalama ve yapıştırma konusunda iyi olduğumu söyleyebilirim. Derinlemesine bir Python programcısı olmamama rağmen, Advertools gibi bir araç kullanmaktan pek çok fayda elde edebildim.
Ne yapacağız
Bu videoda yapacağımız şey bu.
- Yeni bir Colab dosyası oluşturun ve Advertools'u yükleyin
- Reklam araçlarını kullanarak özel bir tarayıcı oluşturun
- Web sitesini ve verileri tarayın ve analiz edin
- Plotly adlı başka bir Python kitaplığı kullanarak bu sonuçların bazılarını görselleştirin
- Verileri dışa aktar
1. Adım: Bir Colab Dosyası Oluşturun ve Reklam Araçlarını Kurun
Google Colab, bir dizi harika şey yapmanıza izin verecek bir araçtır. Tablolar oluşturmak, kendi programlarınızı oluşturmak, özel şeyler yapmak, makine öğreniminden SEO'ya kadar her şeyi ve daha fazlasını yapmak için hücreler içinde kod çalıştırmanıza olanak tanır. Daha önce hiç kullanmadıysanız, kullanımı ücretsizdir ve Google'ın bilgi işlem gücünden ücretsiz olarak yararlanmanıza olanak tanır. Çok güzel, bu yüzden bunu kontrol etmenizi şiddetle tavsiye ederim.
Halihazırda CoLab kullanmıyorsanız burada birçok harika kaynak var. Python dışında bir kütüphaneyi kullanmak için yapmanız gereken şeylerden biri de doğal kurulum. O programı kurmanız gerekiyor. Çoğu zaman PIP adlı bir işlev kullanırsınız ve ardından bu yeni kitaplığı çekersiniz. Kullanımı oldukça basit bir işlemdir.
Bu programları oluşturan tüm bu adamların yaptığı şeylerden biri, size tam olarak nasıl kurulacağını kendi belgelerinde göstermeleridir. Bu yüzden her zaman bu belgeleri okuyun ve bu, "Bu araçları nasıl içe aktarırım ve bu araçları kendim için çalıştırırım?" diye anlamanıza izin verecektir.
Advertools'u yüklemek için bu kod satırını tam burada kullanacağız:
!pip install advertools
Kodu CoLab'daki hücre bloğuna yerleştirdikten sonra devam edin ve oynat düğmesine basın. Bu kod bloğunu yürütecektir. Bunun gibi bir şey görmelisiniz, kodu ve tüm paketi buraya yüklüyor, böylece artık bu kitaplığı tarayıcımızı oluşturmak için kullanabiliriz. Yeşil onay işaretini gördüğünüzde, bittiğini bilirsiniz.
2. Adım: Reklam Araçlarını Kullanarak Özel Bir Tarayıcı Oluşturun
Ardından, yeni bir kod satırı yürütmek isteyeceğiz.
import advertools as adv
from advertools import crawl
import pandas as pd
Devam edebilir ve buradaki kod düğmesine basabilirsiniz, bu yenisini dolduracaktır. Advertools kitaplığının bazı belirli bölümlerini içe aktaracağız. Reklam araçlarını içe aktarıyoruz, tarama yöntemini içe aktarıyoruz. Ayrıca panda denen bir şeyi ithal ediyoruz. Python'a aşina olmayanlarınız için pandalar, veri çerçeveleri içinde verilerimizle çalışmamıza, temelde Python içinde tablolar oluşturmamıza izin verir.
Tüm bunları ayarladıktan sonra, devam edin ve kodunuzu tekrar çalıştırın. Bu, tüm bu bilgileri içe aktaracak. Bir tarama yapıyorsak, burada fark edeceksiniz ki, bunu nasıl yapabileceğimizden, bu taramaları nasıl içe aktarabileceğimizden bahsediyor. Birkaç yaklaşım var; Bizim yaptığımız gibi Advertools'u içe aktarabilir ve yaptığımız şeyi yapacak olan bu komut satırını çalıştırabilirsiniz.
Ekibimden birinin de ondan yararlanmak istemesi durumunda Colab'ın kullanımını biraz daha kolaylaştırmayı seviyorum. Burada gösterdiklerinden biraz farklı bir şey yapacağız. Ancak bu yaklaşımı izlerseniz, doğru olanı yapacaksınız ve aynı zamanda işe yarayacaktır.
site = "https://simplifiedsearch.net/" #@param {type:"string"}
crawl(site, 'simp.jl' , follow_links= True )
crawl_df = pd.read_json( 'simp.jl' , lines= True )
crawl_df.head()
Yapacağımız şey bu kod satırı. Yaptığımız ilk şey bir değişken tanımlamak ve bu değişken taramak istediğimiz web sitesi olacak. Bu param türü dizesini kullanarak, bana burada bir kutu veriyor, bu da buraya, hangi web sitesini taramak istediğimi yazmama izin veriyor. Web sitemi buraya koyabilirim. Buraya herhangi bir web sitesi koyabilirim ve bu değişkeni benim için ayarlayacaktır. Bu sayede buraya yazmak zorunda kalmıyorum. Sadece bir forma yazabilirim ve hücre kutusunun içine tıklama konusunda rahat olmayan biri buraya gelip bir tarafını yazabilir.
Bu durumda, her zaman kullanacağımız için basitleştirilmiş arama sitemizi kullanacağız. Devam edip buraya yapıştıracağız. Bunun hemen altında, burada koydukları kuralların aynısını uyguluyoruz. Advertools.crawl kullanıyoruz ve ardından değişkenimiz olarak siteyi kullanıyoruz. Bir çıktı dosyamız var. Ardından, web sitesi içindeki bağlantıları takip etmesini istiyoruz.
Tarama veri çerçevesini ayarladığımız sonraki adımı da yapıyoruz ve çıktı dosyamızı JSON'da çıkacağı için açmasını söylüyoruz. Pandalar JSON'u okuyacak ve bizim için bir veri çerçevesi oluşturacaklar. Sonunda, her şeyin istendiği gibi çalıştığından emin olmak için bu veri çerçevesinin başını göstermemizi söylüyorum. Bu adımı izleyip bu hücreyi çalıştırdığımızda, web sitesini tarayacağız ve aşağıda bir veri dökümü yapacak ve bu taramadaki tüm farklı işlevleri görebileceğiz.
Devam edeceğim ve bu hücreyi yöneteceğim. Tüm web sitesini taramayı çalıştırdığı için birkaç dakika sürebilir. İşimiz bittiğinde, belirli bilgi parçalarını çıkarmak için tarama verilerinden nasıl yararlanabileceğimiz hakkında konuşacağız.
3. Adım: Web Sitesini ve Verileri Tarama ve Analiz Etme
Artık site tarandı ve elimde URL'lerin, başlıkların, meta açıklamaların, bakış açısının, karakter kümesinin, H1'lerin, H2'lerin ve H3'lerin bir listesinin olduğunu görebilirsiniz. Tüm bu bilgiler bu çerçeveye çekiliyor. Biraz daha temiz görmek istiyorsanız, bu sihirli düğmeye tam burada basabilirsiniz ve Google bu verileri burada çalışmak için biraz daha kolay bir veri çerçevesine aktaracaktır. Burada toplam 266 sütunum var. Bu, birlikte çalışabileceğim çok sayıda sütun.
Tüm bu sütunlarda ne olduğunu kendinize soruyor olabilirsiniz. Burada reklam araçlarına geri dönebiliriz ve tüm farklı unsurları görebilirsiniz. Bakabileceğimiz ve çok sayıda harika bilgi alabileceğimiz oldukça fazla ihracat verisi var.
Elimizdeki tüm farklı sütunların bir listesini görmek istiyorsak, şu kodu çalıştırabiliriz:
columns = list (crawl_df)
columns
Önce sütunları alıp onlardan bir liste oluşturmamız gerekiyor. Kod listesini kullanacağız ve ardından parantezleri ve veri çerçevemizin adı olan crawl_DF'lerinin içine koyacağız ve yeni liste sütunlarını çağıracağız. Burada sütunlarımız var ve o hücreyi çalıştırıyoruz ve tüm bu farklı olası sütunları görebilirsiniz. Oldukça fazla bilgi, gördüğünüz gibi, bir sürü bilgi arıyor.

Ya bu bilginin sadece bir parçasını görmek istersen? Ya tüm başlıkları veya tüm meta açıklamaları veya bazı H etiketi bilgilerini almak isteseydiniz veya belki de tüm sayfaları ve üzerlerinde olabilecek schema.org işaretlemesinin türünü görmek isteseydiniz. Advertools gibi bir şeye sahip olmanın kullanışlı olduğu yer burasıdır.
Diyelim ki sayfalarımızdaki JSON-LD türlerine bakmak istedik.
json_df = crawl_df[[ 'url' , 'jsonld_@type' ]]
json_df
Bazı yeni kodlarla başlayabiliriz. Devam edelim ve JSON-DF adında yeni bir veri çerçevesi oluşturalım. Orijinal veri çerçevemizden bazı bilgiler almak istiyoruz. Yapmak isteyeceğimiz ilk şey, herkesin sürünmesini kolaylaştırmak için buraya biraz inmeme izin verin, _DF. Bir parantez ve başka bir parantez kullanacağız.
Çekmek istediğimiz ilk şey URL'dir. URL'nin önemli olduğunu biliyoruz çünkü sitemizdeki tüm sayfaları, tüm URL'leri bilmemiz gerekiyor. Yapmak istediğimiz bir sonraki şey, JSON türünü bulmak istiyoruz. Bu listeye geri dönebiliriz ve JSON tipine gidebiliriz, onu kopyalayabilir ve JSON tipini de bilmek istiyorum diyebiliriz. Devam edeceğim ve bunu tutarlı tutacağım, böylece en iyi uygulamaları takip edeceğiz. Buradaki bu küçük çizgide ne yapıyoruz? 'Yeni bir veri çerçevesi oluştur' dedik ve orijinal veritabanımızdaki verileri orijinal veri çerçevemizden kullandık ve yalnızca URL'leri ve JSON-LD türlerini geri çektik.
Bunu çalıştırırsam, sadece bu bilgilerle yeni bir veri çerçevesi oluşturacak. Bu verileri görmek için devam edip JSON_DF koyabilir, yeni bir hücre yapabilir ve enter tuşuna basabilirim. Bana tüm sayfalarımın bir listesini ve bu belirli sayfalarla ilişkili işaretleme türünü verir. Bu, hızlı bir şekilde bakmak ve web sitenizdeki tüm JSON'ları, sahip olduğunuz türleri ve hangi işaretlemelere sahip olduğunuzu bulmak istiyorsanız çok yardımcı olabilir.
Ayrıca, işaretlemenin eksik olduğu bazı sayfalarınız var mı? Bunları hızlı bir şekilde tanımlayabilirsiniz. Tüm URL'lerimizin bulunduğu bu yeni verilere sahibiz ve bu sayfada var olduğunu bildiğimiz tüm JSON-LD türlerine sahibiz.
Adım 4: Sonuçları Görselleştirin
Diyelim ki bir müşteriye veya başka birine göstermek için hızlı bir rapor veya grafik veya onlar için bu siteye eklediğimiz bilgi ve veri miktarını ve farklı türlerini göstermek istiyoruz.
Yapmam gereken ilk şey, eklenen tüm farklı işaretleme türlerini saymak ve sonra onu görselleştirebilirim. Bunu sayarak ve yeni bir veri çerçevesi oluşturarak başlayalım. Bu kodu zaten oluşturdum ve size bunun üzerinden geçeceğim:
json_counts = json_df[ 'jsonld_@type' ].value_counts()
json_counts = json_counts.reset_index()
json_counts
Buna JSON sayıları denir. Bu yeni bir veri çerçevesidir. JSON-LD sütunundaki verileri tam burada alıyoruz. Bu sütundaki benzersiz değerleri saymasını sağlıyoruz. Bu kodu çalıştırdığımda ve ardından çıktısını almasını söylediğimde, tüm bu bilgilerin sayıldığını göreceksiniz.
Yaptığı şey, listede bazı sıfırlar veya bazı NAS bulduğu için bana bu hatayı vermesi. Sorun değil çünkü bu bilgiyi burada aldığımızı birazdan göreceksiniz. İşte tüm farklı işaretleme türleri ve hepsi bizim için düzenlenmiştir.
Ayrıca burada olduğu gibi bir veri çerçevesine pek benzemediğini de fark ediyorsunuz. Bu veri çerçevesini veya bu değişkeni, düzgün çalışması için bir veri çerçevesine yeniden indekslemeliyiz. Devam edeceğiz ve veri çerçevemizi vereceğiz ve şu kodu çalıştıracağız:
json_counts = json_counts.reset_index()
Bunu çalıştırdığımızda, bir veri çerçevemiz olduğunu göreceksiniz. Terim olan indeksimiz var. Sonra JSON-LD tipine ve bunun sayısına sahibiz. Hala bir grafiğimiz yok. Hala başka bir veri çerçevemiz var. Bu veri çerçevesini bir görselleştirme veya grafiğe dönüştürmek için ne yapmamız gerekiyor? Plotly adında bir şey kullanacağız.
Plotly, görselleştirmeler oluşturmak için kullanabileceğimiz Advertools'a çok benzeyen başka bir kütüphanedir ve özellikle Plotly express'i kullanacağız. Yapmamız gereken ilk şey Plotly'yi kurmak, devam ediyoruz ve PIPinstallPlotly yapıyoruz, bu hücreyi çalıştıracağım. Bu çalışma sayfasına zaten yüklenmiş, ancak sorun değil. Gördüğünüz gibi, bize zaten kurulu olduğunu, zaten memnun olduğunu söyleyecek. Gitmek için iyiyiz.
Buradan kopyaladığımız kodu alın ve tarayıcımıza geri yapıştırın. Bu ortadakine ihtiyacımız yok çünkü bu kullanmadığımız veriler. Kendi verilerimizi kullanıyoruz. Plotly express'i PX olarak içe aktarmamız gerekiyor ve doğru bilgiyi grafiğimize almak için yeni veritabanımızı buraya bağlamamız gerekiyor.
! pip install plotly
import plotly.express as px
fig = px.bar(json_counts, x='index', y='jsonld_@type')
fig.show()
Veri çerçevemize JSON sayıları adı verildi. X'imizde index kullanacağız ve Y'de JSON tipini kullanacağız. Neden bunları seçtim? Dizin, kelimelerin olduğu yerdir. Bunların X üzerinde olmasını istiyoruz ve sonra sayı JSON-LD @type üzerindedir ve bu bizim Y'miz olacak, bu bize bu sütunların her birinde kaç tane olduğunu söyleyecek. Devam edeceğiz ve bunu buraya koyacağız. Gayet basit. Ve sonra fig.show bu grafiği gösterecektir. Şimdi, burada tüm farklı türlerimiz var ve burada, güzel bir grafikte her türün farklı miktarları var.
Bunu paylaşmak isterseniz PNG olarak indirebilirsiniz ve Plotly şimdi bilgisayarınıza indirecektir. Bunu alıp "Bu kadar sayfaya bu kadar not koyduk" diyebilirsiniz. Hızlı bir şekilde görselleştirmenin oldukça havalı bir yolu.
Adım 5: Verileri Dışa Aktarın
Ancak, tüm bu verileri indirmek ve onunla çalışmak istiyorsak, belki Google sayfalarında veya başka bir şeyde? Peki, bunu yapmak için bunu da yapabilirsiniz. Sadece bir kod satırı daha kullanmamız gerekiyor ve gitmeye hazır olmalıyız. Diyelim ki bu tabloyu tüm web sitesi sayfalarımızla ve JSON-LD türüyle birlikte indireceğiz. Bu hücreye veya istediğiniz herhangi birine gidebiliriz ve sonra yeni bir kod satırı oluşturacağız.
Google Colab'dan içe aktarma dosyaları adı verilen bir şey kullanmamız gerekiyor. Yapacağımız ilk şey bu. Sonra, JSON-DF olan bu veri çerçevesini bulacağız. Bunu aşağıya ekleyeceğiz ve .2_CSV diyeceğiz ve sonra ona bir isim vereceğiz. Bunu JSON_DF.CSV olarak adlandırabiliriz. Bu kodu yazdıktan sonra CSV dosyanızı oluşturdunuz. Buradan klasörüme bakarsam, dosyayı tam burada göreceksin.
Buradan, devam edip indirebilirim veya buraya daha da hızlı indirmemize yardımcı olacak bir kod satırı koyabilirim. Files.download diyebilirim ve sonra devam edip yeni oluşturduğum bu dosyayı çağırıyorum ve Colab'dan doğrudan benim için indirmesini istedim. Bu hücreyi çalıştırdığımda o dosyayı indirecek ve işte elimde. Devam edebilirim, aç'a tıklayabilirim ve şimdi sahip olduğum herhangi bir elektronik tablo aracıyla istediğim her şeyi yapabileceğim bu CSV dosyasına sahibim. Ayrıca bazı işaretlemeleri eksik olanları da görebiliyorum.
İşte aldın. Devam ettik ve kendi özel tarayıcımızı oluşturduk. Bazı özel verileri çektik. Bu verileri görselleştirdik ve diğer programlarda kullanmak için bu verileri indirdik. Bütün bunları biz yaptık ve ben bir bilgisayar programcısı değilim, öyleymiş gibi davranmaya bile çalışmıyorum. Daha önce de söylediğim gibi, sadece kopyalama ve yapıştırma konusunda iyiyimdir. Siz de bu şeyleri çözebilirsiniz.
Sorularınız olduğunda, her zaman harika çözümler vardır. Yeni ve farklı bir şey denemek istiyorsanız, Colab'da oynamanızı şiddetle tavsiye ederim. Orada birçok harika kaynak var. Benden çok daha zeki olan ve onlardan çok şey öğrendiğim çok daha şaşırtıcı şeyler yapan ve pazarlama oyunumda, araştırmamda, emeklememde ve çok daha fazlasında bana yardımcı olan birçok insan var.
Bugün yaptıklarımız hakkında herhangi bir sorunuz varsa, lütfen aşağıya yorum yapın. Ayrıca bu özel CoLab dosyasına erişim vereceğim ve yol boyunca kullandığımız kodu adım adım paylaşacağım. İzlediğiniz için çok teşekkürler. Abone olmayı unutmayın ve bir dahaki sefere kadar iyi pazarlar.