Profil resmi, herhangi bir sosyal medya hesabının ana unsurlarından biridir, ancak Instagram gibi uygulamalar onu görüntülemenize veya indirmenize izin vermez. Bu işlem, Python ile Selenium gibi bir web otomasyon aracı kullanılarak kolayca gerçekleştirilebilir.

Bir web sayfasının herhangi bir öğesiyle etkileşim kurmak, onu otomatikleştirmek ve üretken görevlere yatırım yaparak kendinize çok değerli zaman kazandırmak için bu güçlü ikiliyi kullanmayı öğrenin. Ve en iyi kısmı? Giriş yapmadan veya bir Instagram hesabına sahip olmadan bunu oluşturun.!

Algoritma Oluşturma Süreci

Algoritma oluşturma, sorunu belirleme ve programın otomatikleştirmesi gereken adımları listeleme sürecini ifade eder. Bir profil resmini indirmek için gereken farklı adımlar şunlardır:

  1. Bir profilin kullanıcı adını girdi olarak alın
  2. Google Chrome'u açın
  3. Instagram profilini ziyaret edin
  4. Profil resmini indir

Bu, problem ifadesinin algoritması olarak hizmet eder.

Bu proje aşağıdaki Python modüllerini ve araçlarını kullanır.

instagram viewer

1. Urllib Modülü

Urllib, internetten URL'leri işlemek için kullanılan bir Python modülüdür. Hesabın profil resmini kaynak URL'sinden indirmek için bu modülü kullanacaksınız. Urllib sisteminizde mevcut değilse, aşağıdaki komutu kullanarak kurabilirsiniz. pip kurulum urllib'i.

2. Zaman Modülü

Bu modül zorunlu olmasa da internet bağlantınız yavaşsa veya web sayfasının içeriği, Python program etkileşimi sırasında yüklenmez. internet sayfası. Delay() işlevi, derlemenin başarısız olmaması için küçük bir gecikme koymamıza yardımcı olur.

3. Selenyum Modülü

En popüler açık kaynaklı tarayıcı otomasyon araçlarından biri Selenium'dur. Google Chrome, Microsoft Edge, Safari ve Mozilla Firefox gibi çeşitli tarayıcıları destekleyen bir Python paketi olarak mevcuttur. Selenium'u Python ortamınıza kurmak için, terminal ve yürütmekpip yükleme selenyum.

4. Web Sürücüsü

Web sürücüsü, Selenium tarafından kullanılan ve program ile herhangi bir web sitesi arasında bağlantı kuran bir araçtır. Farklı türde web sürücüleri otomatikleştirmek istediğiniz tarayıcıya göre kullanılabilir. Bu yapı için Google Chrome tarayıcısını kullanacaksınız. Chrome için web sürücüsünü yüklemek için:

  1. adresini ziyaret ederek kullandığınız tarayıcının sürümünü kontrol edin. Menü (3 nokta) >Yardım > Google Chrome hakkında.
  2. Tarayıcının sürümünü not edin.
  3. İndirilenler sayfasını ziyaret edin ChromeDriver - Chrome için Web Sürücüsü.
  4. ChromeDriver'ın mevcut sürümlerinden sürüm numaranızla eşleşen seçeneği belirleyin.
  5. Dosyayı işletim sisteminize göre seçin ve indirin.
  6. İndirilen dosyayı ayıklayın ve Python programınızla aynı klasöre yerleştirin. Bu, kodlama sırasında yolu ayarlamada yardımcı olacaktır.

Bir Web Sayfasının Herhangi Bir Yönünü Otomatikleştirmek İçin Kod Nasıl İncelenir?

Selenium ve Python kullanan herhangi bir web otomasyon süreci için, web ve teknolojileri hakkında temel bir anlayışa sahip olmak çok önemlidir. Kazanmak için ilk adım HTML'ye giriş bunu takiben Basamaklı Stil Sayfalarını (CSS) anlama. Kimlikler ve sınıflar kavramına burada aşina olacaksınız.

Kimlikler ve sınıflar, sırasıyla bir öğeye veya öğe kümesine (etiketler) verilen benzersiz adlardır. Bunları kullanarak gerekli öğeyi bulursunuz ve Python programına onu özel olarak hedeflemesini söylersiniz. Kodu incelemek ve profil resmini bulmak için:

  1. Instagram hesabının web sayfasını açın.
  2. tarayıcıya tıklayın Menü > Diğer Araçlar > Geliştirici Araçları veya kısayolu kullanın Ctrl + Üst Karakter + I etkinleştirmek için Geliştirici Araçları görüş.
  3. tıklayın ve seçin Öğe Seçici pencerenin sol köşesindeki aracı (fare imleci simgesi) seçin ve kodun o bölümüne atlamak için web sayfasının herhangi bir bölümünün üzerine getirin.
  4. Herkese açık bir hesabın ve özel bir hesabın profil resimlerinin farklı şekilde ayarlandığını unutmamak önemlidir. İmleci herkese açık bir hesabın profil resminin üzerine getirin. Genel Profil için sınıf özniteliği _aa8j.
  5. Özel bir profil için yukarıdaki adımı tekrarlayın. sınıf özelliği _aadp.

Herhangi bir web sayfasını anlamak ve otomasyon için herhangi bir öğeyi hedeflemek için bu prosedürü kullanabilirsiniz.

Instagram Profil Resmi İndiricisi Nasıl Oluşturulur

İndiriciyi oluşturmak için bu adımları izleyin.

  1. Gerekli modülleri Python ortamına aktarın.
    itibaren selenyum içe aktarmak web sürücüsü
    içe aktarmak zaman
    içe aktarmak urllib.request
  2. Giriş işlevini kullanarak, profil resmi indirilecek olan profilin kullanıcı adını alın ve bunu username adlı bir değişkende saklayın.
    #profil resmi indirilecek profilin kullanıcı adını girme 
    kullanıcı adı=girdi("Profilin kullanıcı adını girin: ")
  3. Bir nesne oluşturarak ve dosya sistemi yolunu geçerek web sürücüsünü başlatın.
    # chromedriver nesnesi oluşturma 
    cd='chromedriver.exe'
  4. Kullan web sürücüsü. Krom Google Chrome tarayıcısını başlatma işlevi.
    #google chrome tarayıcısını aç 
    sürücü = web sürücüsü. Krom(CD)
  5. Herhangi bir Instagram hesabının URL'si şu biçimdedir: https://www.instagram.com/ ardından kullanıcı adı gelir. Profilin URL'sini şu şekilde ayarlayın:
    #url'yi ayarlama
    url='https://www.instagram.com/'
    url_p=url+user_h
  6. Ziyaret edilecek Instagram profilinin tam URL'sini get() işlevine iletin.
    #profili aç 
    sürücü.almak(url_p)
  7. Web sayfasının tamamen yüklenmesi için isteğe bağlı bir önerilen gecikme ayarlayın.
    sayfa içeriği yükleme için #delay
    zaman.uyumak(5)
  8. Profil resminin genel bir profile ait olup olmadığını bulmak ve belirlemek için try-except bloğunu kullanın. Bu, XPath ifadesindeki class niteliği kullanılarak yapılır. Başarısızlık durumunda, özel bir hesabın profil resmini aramak için hariç bloğunu kullanın.
    denemek:
    #profil herkese açıksa, _aa8j sınıfıyla resim arayın
    image=driver.find_element_by_xpath('//img[@class="_aa8j"]')
    hariç:
    #eğer profil özelse, _aadp sınıfıyla resim arayın
    image=driver.find_element_by_xpath('//img[@class="_aadp"]')
  9. get_attribute() işlevini kullanarak görüntünün src niteliğini elde edin. Bu, görüntünün bağlantısını döndürür.
    #resmin indirme bağlantısını saklayın 
    img_link=image.get_attribute('kaynak')
  10. İndirilen dosyanın yolunu ve uzantısını ayarlayın. Örneğin dosya sisteminizin D: sürücüsüne indirilecek resmi JPG formatında ayarlayabilirsiniz.
    #indirilen dosyanın yolunu ayarla 
    yol="D:\\"+kullanıcı adı+".jpg"
  11. Kaynak olarak profil resminin bağlantısını ve hedef olarak yerel sistem klasör yolunu urlretrieve() işlevine ileterek resmi indirin.
    #görüntü gerekli hedefe indiriliyor
    urllib.rica etmek.urlretrieve(img_link,yol)
  12. Klasörü ziyaret edin ve profil resminin indirildiğini görün. İsteğe bağlı olarak, profil resminin indirildiği yolu da görüntüleyebilirsiniz.
    #indirilen profil resminin yolunu görüntüleme 
    Yazdır("Profil resmi şuradan indirildi: "+yol)

Python Kullanan Instagram Profil Resmi İndiricisi için Son Kaynak Kodu

Hepsini bir araya getirdiğinizde şunları elde edersiniz:

#gerekli modülleri içe aktarma
itibaren selenyum içe aktarmak web sürücüsü
içe aktarmak zaman
içe aktarmak urllib.request
#profil resmi indirilecek profilin kullanıcı adını girme
user_h=input("Profilin kullanıcı adını girin: ")
#url'yi ayarlama
url='https://www.instagram.com/'
url_p=url+user_h
#chromedriver nesnesi oluşturma
cd='chromedriver.exe'
#google'ı aç
sürücü = web sürücüsü. Krom(CD)
#profili aç
sürücü.almak(url_p)
sayfa içeriği yükleme için #delay
zaman.uyumak(5)
denemek:
#profil herkese açıksa, _aa8j sınıfıyla resim arayın
image=driver.find_element_by_xpath('//img[@class="_aa8j"]')
hariç:
#eğer profil özelse, _aadp sınıfıyla resim arayın
image=driver.find_element_by_xpath('//img[@class="_aadp"]')

#resmin indirme bağlantısını saklayın
img_link=image.get_attribute('kaynak')

Web Otomasyonu Uygulamaları

Otomasyon yalnızca zamandan, paradan ve emekten tasarruf etmenize yardımcı olmakla kalmaz, aynı zamanda hataları önlerken görevlerin tamamlanmasını da garanti eder. Farklı web sitelerinin oturum açmasını otomatikleştirmek, bulut sunucuları yedeklemesi yapmak, mesajları planlamak, sosyal medya platformlarında doğum günleri dilemek, gönderiler oluşturmak, tweet'ler yayınlamak ve daha pek çok şey için bu tekniği kullanın.