Python ile Instagram Bot Yazalım! [Python Otomasyon]
Вставка
- Опубліковано 14 жов 2024
- Bu videomuzda Python ile otomasyon uygulamaları nasıl yazılır öğrenelim.
+50 saat sıfırdan ileri seviye python programlama kursuma katılmak için aşağıdaki indirim kuponunu kullanın!
www.udemy.com/...
** Instagram ile Kullanıcı Girişi
** Instagram Takipçi Listesinin Alınması
** Scrolling ile Instagram Takipçi Listesinin Alınması
** Instagram Kullanıcıları Otomatik Takip Etme
** Instagram Kullanıcılarını Otomatik Takibi Bırakma Özelliği
** Instagram Takipçilerinin Dosyaya Kayıt Edilmesi
Bu video ile birlikte aşağıdaki videoyu seyretmenizi tavsiye ederim.
• Google Maps Api Dersle...
Ayrıcalıklardan yararlanmak için bu kanala katılın:
/ @sadik_turan
Kaynak Kod: github.com/sad...
Discord grubu: / discord
Telegram grubu: t.me/sadiktura...
Tüm güncel kurslarım için sadikturan.com sayfamı ziyaret ederek indirim kuponlarından faydalanabilirsiniz.
Komple Uygulamalı Web Geliştirme Eğitimi
www.udemy.com/...
Python ile Sıfırdan İleri Seviye Python Programlama
www.udemy.com/...
Python Django ile Sıfırdan İleri Seviye Web Geliştirme
www.udemy.com/...
Sıfırdan İleri Seviye Modern Javascript Dersleri ES7+
www.udemy.com/...
Php ile Sıfırdan İleri Seviye Web Programlama Kursu
www.udemy.com/...
Asp.Net Core Mvc ile Sıfırdan İleri Seviye Web Programlama
www.udemy.com/...
Sıfırdan Uygulamalı React Geliştirme Kursu: Redux & Hooks
www.udemy.com/...
Angular 12 ile Sıfırdan İleri Seviye Web Geliştirme
www.udemy.com/...
.Net Core Web Api & Angular ile Proje Geliştirme Kursu
www.udemy.com/...
Bootstrap 5 ile Premium Web Tasarım Proje Geliştirme Kursu
www.udemy.com/...
Sıfırdan Uygulamalı SQL Veri Tabanı Dersleri: MySQL & MsSQL
www.udemy.com/...
E-Ticaret Kursu: Katmanlı Mimari ile Asp.net Mvc Dersleri
www.udemy.com/...
C# Programlama Eğitimi : En Baştan Adım Adım Öğren: www.udemy.com/...
Mobil Uygulama Kursu: Xamarin ile Android ve IOS Geliştirme
www.udemy.com/...
1 yıl içerisinde birkaç yer değişmiş olmalı ki kodun aynısını yazsam birebir aynı yollardan gitsem dahi hatalar almaktayım, zamanında yakalayabilseymişim videoyu güzelmiş elinize sağlık.
peki buldun mu başka bir yerde bu kodu ?
Hocam Python üzerinden sms bomber yapımını videosunu çeker misin?
hocam selamlar, instagram bot dersinizi önce btk akademiden sonra da youtube üzerinden izledim ama ikisinde de hem instagram kodlarının değişmesi hem de python ve selenium kodlarınının değişmesi nedeniyle, mesela find_element(By.CLASS_NAME, "class name") artık böyle yazılması ve instagramda takipçilerin alınması kısmında ul ve li lerin altında olmaması ve bu yüzden takipçilerin alınamaması gibi birçok değişiklikden dolayı bir türlü tam olarak uygulayamadım, bu kurs güncellenecek mi acaba çünkü güncel hali olmadan şu anda kodlar çalışmıyor.
hocam 1-2 çalıştırdıktan sonra nasıl oluyorsa instagram bir şekilde tespit ediyor ve sisteme desktop üzerinden girişi doğru şifre kombinasyonunu kullansanız bile kabul etmiyor. Doğrudan şifre hatalı uyarısı veriyor. Aynı şifreyle mobilden girilmesine izin veriyor.
Hocam selam bir sorum olucak ben PHP Laravel biliyorum az çok ancak Spring Boot'u tavsiye ettiler sizce Spring Boot mu Laravel mi tercih edersiniz? İkisini de öğreniyorum ancak çok kararsız kalıyorum proje çalışmalarında. React front end çerçevesini de kullanacağımızı göz önünde bulunudurursak web/mobile rest api için spring boot daha iyi bir tercih olabilir mi acaba?
chromedriver 119 üst sürümleri yükleyemiyorum. Sanırım chrome test gibi bir şey çıkarmışlar ve artık driver gerekmeyecekmiş ama test driver yazılım ile konsoldan girmek gerekiyor ama bir türlü giremedim. frifoxa dönmek zorundayım yada apı girmem gerek , biraz daha araştıracağım.
güncelleme :çözdüm testing bölümündeki size hangisi uyuyor ise onu seçip direk url kopyalayacaksın direk zip iniyor;
Hocam emülatörlerlde bot yapma videosu gelir mi?
Hocam ağ yoğunluğu ve benzeri bilimum etmenlerden dolayı hardcoded olarak aralara yazdığınız "time.sleep(2)" satırlarındaki "2 saniye" süre açısından her daim garantili olarak yeterli gelmeyebilecektir. Onun yerine eğer mümkünse DOM Ready (document.readyState) gibi state-yönelimli bir yöntem daha makul olmaz mı? Veya bir sonraki ilgili elementin varlığını ve henüz yüklenip yüklenmediğini while döngüsü içinde "null (None)" değerine karşı bir koşul bloğu içinde kontrol etmek de mümkün olabilir gibi geldi bana. İyi çalışmalar dilerim. Selamlar.
document.readyState te tam tutmayabiliyor. Completed donse bile. en temizi sayfa yuklendikten sonra nesnenin var olup olmadigini sorgulamak ona gore beklemek.
Bunun için Selenium içindeki WebDriverWait komutu kullanılabilir.
Örnek kullanımı:
username_giris = WebDriverWait(self.driver,15).until(
EC.presence_of_element_located((By.NAME, "username")))
Bu aradığımız elementin tıklanılabilir hale gelmesini bekliyorsak da son kısımda
EC.element_to_be_clickable komutunu kullanabiliriz.
@@monkmode9138 en temizi bu, eline sağlık
hocam teşekkür ederim bu çalışma için. şimdi biz ama sonra bir çokları faydalanacaktır.
bunu herhangi bir kişiden yapabiliriz değil mi problem olmaz sanırım
hocam emeğiniz için teşekkürler, chome açıldıktan sonra herhangi bi işlem yapmıyor herhangi bir yere tıklayamıyorum, herşeyi doğru yapmama rağmen farklı sitelerdede denedim neden olabilir acaba
hocam merhaba ben ilk adımları yapıyorum ama bana userinfo no module hatasını veriyor bunu nasıl başarırım ?
Merhabalar hocam.ben instragam telegram için bot yaptırmak istiyorum.siz yapıyor musunuz yada yaptirabilecegim kişiler varmı .
Telegram bot gelir mi hocam bir kanaldan paylaşılan içerikleri kendi kanalımıza çekme gibi
Hocam böyle dinamik botlarda website hiç ekranda gözükmeden arka planda çalışan bir bot yapamaz mıyız?
İyi günler kolay gelsin UA-cam canlı yayın için oto bot yapmak istiyorum yardımcı olurmusunuz veya bilginiz varsa yaparmisin ücreti ne olduğu önemli değil
File "c:\Users\Lenovo\Desktop\PYTHON\INSTAGRAM\APP.py", line 1, in
from selenium import webdriver
ModuleNotFoundError: No module named 'selenium'
hocam nerde hata yapıyorum anlamadım yardımm
Anladığım kadarıyla kütüphaneyi indirirken hata yapmışsınız. Selenium kütüphanesini tekrar temiz bir şekilkde indirmenizi öneririm.
sürüm kaç
Merhaba hocam tarayıcıda Instagram hatasız bir şekilde açılıyor ama giriş yapmiyor sorun nedir teşekkürler
hocam şu Twitter botları nasıl oluyor? selenium ile yapılabilir mi yoksa ayrı bir yöntemi mi var?
hani botun hesabını etiketliyoruz ve sayfa gelip alta yorum yazıyor ya
mesela siyah beyaz fotolar icin renklendirme botu vs
onlar twitter api ile yapılıyor. twitterdan da api almak baya uğraştırıyordu en son. ama alırsanız tweepy ile her şeyi yaparsınız. çok basit kütüphane.
Selenium kütüphanesi otomasyon işlemleri için kullanılıyor. Bot yazmak için tercih edilmez. Zaten gerekleri de karşılayamaz. API veya Cookie kullanın. Hazır kütüphaneler de vardır. Ancak bunların işlemleri gerçekleştirirken sizlere gerçekleştiğini gösteren Selenium gibi arayüzleri yoktur. İşlemleri direkt olarak http-request'ler ile hızlıca gerçekleştirirler.
Merhaba hocam, bildirimleri aç kısmı ve sonraki takipçi listesi gibi yerlerde sürekli şu hatayı alıyorum. Yani tıklama yapamıyorum. Hata "No Such Element: Unable to locate element" Xpath, class name, element denememe rağmen hep bu hatayı alıyorum. Acaba ben mi yanlış yapıyorum?
Element seçmede hata var. Html yapısı değişebiliyor ya da seçimde hata vardır test etmek lazım
@@sadik_turan Hocam ne yaptıysam çözemedim sorunu. Internette aynı sorunu yaşayanların denedikleri yöntemleri de denedim. Son çare olarak webdriver sürümlerini değiştirdim yine sonuç alamadım. Sanırım instagram ile bir sorun var.
Eğer web sayfası yüklenmeden veri çekmeye çalışıyorsan bu hatayı alırsın, time.sleep kısmını biraz uzalt veya daha garanti bir yöntem için WebDriverWait kullan. Örnek kullanım:
username_giris = WebDriverWait(self.driver,15).until(
EC.presence_of_element_located((By.NAME, "username")))
Elementin tıklanılabilir hale gelmesini bekliyorsak da son kısımda
EC.element_to_be_clickable komutunu kullanabiliriz.
@@monkmode9138 Mehabalar, sorunu çözdüm. Ben Chrome tarayıcıdan xpath yolumu kopyalıyordum. Firefox ile xpath yolunu kopyaladım ve projemde kullandım, sorun çözüldü.
@@monkmode9138 kanka bu yazdığın kod tam olarak ne işe yarıyor waitpageload gibi birşey mi
Scrolling de yaptigimiz action.key.down çalışmıyor. Normalde boşluğa bastığımda dahi takipçi listesi aşşağıya inmiyor. Farkli bi yolunu bulamadim hocam
def scrollDown(self):
jsKomut = """
sayfa = document.querySelector('._aano');
sayfa.scrollTo(0,sayfa.scrollHeight);
var sayfaSonu = sayfa.scrollHeight;
return sayfaSonu;
"""
sayfaSonu = self.browser.execute_script(jsKomut)
while True:
son = sayfaSonu
time.sleep(2)
sayfaSonu = self.browser.execute_script(jsKomut)
if son == sayfaSonu:
break
Başka bir video da böyle yapanı gördüm. Javascript kodu kullanılıyor için de .
Videoyu 19.00 dan itibaren aç ua-cam.com/video/ji_9osXM1ss/v-deo.html
Ben bu kodu yaptım çalışıyor. İnternet hızına göre time.sleep(2) kısmını arttırabilir veya azaltabilirsin ama 2 saniye bende iyi çalışıyor.
@@mertcancaglayan6066 hocam timing problemi değil benim sorunum. Boşluğa basınca instagram takipçi listesindeki scroll bar assagiya inmiyor. Sizde boşluga basinca assagiya iniyorsa bu kod hatasız çalışır bencede.
@@mertcancaglayan6066 bu kodda çalışmıyor bende denemistim chrome surumum eski oldugu icin calismiyor olabilir
@@deepon4128 bu kod boşluğa basıp indirdiğin kodun yerine alternatif bir kod. Boşluğa basarak indirmiyorsun.
Hocam mesela 1000 hesap açtık bunu para karşılığında satmak istiyoruz hepsinin tek bir hesabı takip etmesi için nasıl bir yol izlememiz gerekir çok araştırdım bualamadım
Bulabildinmi reis
1000hesabı otomatik bir şekilde nasıl açıyoruz
Hocam bende find element de sadece 2 secim cikiyor. By li hic bir secenek cikmiyor. İllaki by import u yapmam gerekiyor bunun sebebi nedir acaba
bunun sebebi selenium kütüphanesinin 4.3.0. sistemi ile değişmiş olmasıdır. Bu konumda yeni sistem şöyledir. (Örneğin bir class adı almaya çalışalım ve bu klasın adı "x" olsun) => element = driver.find_element(By.CLASS_NAME,"x") Bu şekilde kullanabilirsiniz.
@@kuzeygorgulu ve bunun öncesinde de By yi import etmen gerekiyor: from selenium.webdriver.common.by import By
@@ibrahimgundogmus2111 aynen öyle
eskiden ne güzel li içinde sunuluyormuş şuan baya degişmiş
şuan nasıl ?
@@treanglex knk bu kadar kolay ulaşamıyorusun hatta bs4 ile olmuyor seleniumdan yapmak lazim ben yapmıştım 3 ay önce kodu lazimsa atabilirim
@@softwareengineer1503 kodu atarsan iyi olur telegram veya ulaşabileceğim başka platform adresini yazarsan sevinirim
@@softwareengineer1503 hocam biryerden kodu atabilirmisin
space tuşuyla scrolling yapılmıyor şuan,ne yaptıysam aşağı kaydıramadım yardımcı olacak yok mudur
halletin mi hocam
Instagram değişikliğe mi gitti? sanırım artık takipçi listesini ul/li içerisinde sunmuyor
Evet, aynı dertten muzdaribim.
@@kuzeygorgulu css selector kullanarak span'ları alabilirsiniz sonra da tag name ile içereisinden a'ları aldım ben.
@@emirerdem5769öyle olsa dahi 1-17 arası dönüp duruyor yakalamak çok zor senkronize yapmak lazim
Login olmada problem yokta :) register da banlıyor :)
Kullandığınız tarayıcılar driver olduğundan kolayca tespit ediliyor ve otomatik hesap açma işlemi Instagram kullanım koşullarına aykırı olduğundan işlem engelleniyor. Cookie veya API yardımıyla otomatik hesap açma işlemleri yapabilirsiniz ancak yine de hesap açma işlemleriniz sınırlandırılacaktır ve proxy kullanmanız gerekecektir.
@@hexlity Cookie ve api ile açarkende hesap banlanıyor çözemedim nerede hata yaptığımı önerdiğiniz proxy firması var mıdır? Random cookie oluşturmak çözer mi acaba problemi
@@mehmetuzgul9461 bu tarz işler ile uğraşmayalı çok oluyor csrftoken tarzı cookie eşlemeleri vardı eşlemeler ile yapmanıza rağmen mi hesap banlanıyor? Bir de hesap oluştururken kullandığınız endpoint'ler şifreli mi? Ayrıca benim bildiğim Instagram tanınmayan domainlerde ve tam emin olmamakla birlikte sanırım ssl sertifikasız domainlerde kullandığınız maillere göre otomatik hesap bloklama işlemi yapıyor olabilir. Sonuçta koşullara aykırı olduğundan çok fazla bloke edilmeye çalışılıyor. Bu işin ustaları, sosyal medya takipçi satıcıları işin inceliklerini biliyordur. Ancak yoğun araştırmaların sonucu bu tarz bilgilere erişilebilir. UA-cam veya başka video platformlarında bu tarz bilgileri paylaşmazlar. Diğer blog veya forum sitelerinde de paylaşılmaz. Herkesin bot satışı yapması vs. istenmez. Zaten paylaşılsa da Instagram kolayca tespit eder sorunu direkt çözer.
@@hexlity aslında daha önceden açıyordum python selenium kullanarak çok açtım ama şimdi tarayıcı üzerinden bile açamıyorum ki sadece ben değil bir çok kullanıcı bu problemi yaşıyormuş requests kütphane ile ortalama 2-3 saniye de bir hesap açıyorum lakin doğrulamaya düşüyor farklı yolları vardır muhakkak
@@mehmetuzgul9461 açtığınız hesapların e-postlarını nasıl sağlıyorsunuz tam olarak
hocam kaynak kodu yanlış vermişsiniz
düzelttim teşekkür ederim.
Abi telefondan yapımı
1 verdim
Hocam video içerisinde yazdığınız kodlar vscode da farklı şekilde kullanılıyor fakar örneğin el = self.browser.find_element(By.CLASS_NAME, '_a9_1').click() şeklinde sizin yazdığınız şekilde hataya düşüyor
python sürümü değiştiği için o hatayı veriyor güncel kullanımı senin yazdığın gibi
benim şöyle bir sorunum var
BTK Akademi üzerinden eğitiminiz takip ediyorum, şu an eğitim 2019 a göre olduğu için birebir yazdığınız kodlarda hata alıyorum, güncelleyerek kodları çalıştırsam da instagram botu ile alakalı bir noktaya takıldım. Chrome üzerinden çalışıyorum, hesaba giriş yaptıktan sonra ekrana instagram üzerinden bilgileri hatırla ya da şimdi değil seçenekleri olan bir uyarı penceresi geliyor. Bu pencerenin "şimdi değil " seçeneğini html kaynağından xpath olarak kopyaladım, send_keys(ENTER) kullanarak da denedim click() olarak da denedim çalıştıramadım. Bunu çözebileceğim bir kod var mıdır ?
Sorununun sebebi yüksek ihtimalle senin yazdığın kodun çalıştığı zaman ile uyarının geldiği zamanın farklı olması. Yani XPath ile bulup click() metodunu kullandığın buton yüksek ihtimalle kod çalışırken ekran olmuyor olabilir ve yazdığın kod boşa gitmiş oluyor olabilir. Selenium kütüphanesinindokümantasyonundan, herhangi bir öğeyi bulurken önce yüklenmesini beklemesini kodlayabilirsin. Bu sayede bulmaya çalıştığınız öğe, örneğin "şimdi değil butonu", yüklendikten sonra kodunuz çalışır bu sayede istediğiniz sonuca ulaşırsınız.
hocam, app = Instagram (username, password)
NameError: name 'Instagram' is not defined adlı hatayı alıyorum yardımcı olurmusunuz?
(username den önce boşluk olmaz