Python Whatsapp Bot Yapımı (1 Viewer)

Joined
May 6, 2020
Credits
0
Rating - 0%
Bu yazımda sizlere pratik niyetinde bir python yazılımı göstereceğim.
Yazılımın amacı karşıdaki kişinin whatsapp son görülmesi kapalı da olsa onu görebilmektir.

Kodlar şu şekilde:


from selenium import webdriver
import smtplib
import time
from os import system as sys
from datetime import datetime as dt
import locale

locale.setlocale(locale.LC_ALL, '')


path = "geckodriver.exe nin yolu"

browser = webdriver.Firefox(executable_path=path)

browser.get('https://web.whatsapp.com/')

time.sleep(30)
browser.find_element_by_xpath('XPath Kodu').click()
## Burada Seçtiğiniz XPath'i Giriyorsunuz


class Mail():

def __init__(self):

self.__topic = "Kullanıcı Son Görülme"


def sendMail(self,bot_mail,owner_mail,password,message):

self.__bot_mail = bot_mail
self.__owner_mail = owner_mail
self.__password = password
self.__message = message


server = smtplib.SMTP("smtp.gmail.com:587")
server.starttls()
server.login(self.__bot_mail,self.__password)
server.sendmail(self.__bot_mail,self.__owner_mail,self.__message)
server.quit()

def getBotMail(self):

return self.__bot_mail

def getOwnerMail(self):

return self.__owner_mail

def getMessage(self):

return self.__message

def getTopic(self):

return self.__topic

def getInfo(self,info_msg):

self.__info_msg = info_msg

self.__email_text = f"""
Nereden: {self.__bot_mail}
Nereye: {self.__owner_mail}
Konu: {self.__topic}
Mesaj:

{self.__info_msg}
"""

print(self.__email_text)

def printConsoleText(self,text):

self.__text = text
print(self.__text)


def firstEnter(self):
## Online Object

self.__f_enter = dt.now()
## First Entering Time Saved
self.__f_seen_date = dt.strftime(self.__f_enter,'%A.%B.%Y.%X Tarihinde Giriş Yaptı')
self.__f_seen = [self.__f_enter.day,self.__f_enter.month,self.__f_enter.year,self.__f_enter.hour,self.__f_enter.minute]

def lastEnter(self):
## Offline Object

self.__l_enter = dt.now() ## Last Entering Time Saved
self.__l_seen_date = dt.strftime(self.__l_enter,'%A.%B.%Y.%X Tarihinde Çıkış Yaptı')
## Console Message
self.__l_seen = [self.__l_enter.day,self.__l_enter.month,self.__l_enter.year,self.__l_enter.hour,self.__l_enter.minute] ## Mail Message

def getLastSeen(self):
## Only Offline Object

return self.__l_seen

def getFirstSeen(self):
## Only Online Object

return self.__f_seen

def getFirstSeenDate(self):

return self.__f_seen_date

def getLastSeenDate(self):

return self.__l_seen_date


kontrol = True
kontrol2 = True
kontrol3 = False



while True:


try:
browser.find_element_by_xpath("//span[text()='çevrimiçi']")
if kontrol == True:
msg = "Cevrimici!"
online = Mail()
online.sendMail('gönderici maili','alıcı maili','Gönderici Epostanın Sfresi',msg)
## Buraya Kendi E-posta Şifre Bilgilerinizi Gİrin
sys("cls")
online.getInfo(msg)
online.firstEnter()

#f_enter = dt.now() ## First Entering Time Saved
#f_seen_date = dt.strftime(f_enter,'%A.%B.%Y.%X Tarihinde Giriş Yaptı')
#f_seen = [f_enter.day,f_enter.month,f_enter.year,f_enter.hour,f_enter.minute]


beginning = time.time()
kontrol = False
kontrol2 = True
kontrol3 = True


except:
kontrol = True

if kontrol2 == True:
msg2 = "Cevrim Disi!"
offline = Mail()
offline.sendMail('gönderici maili','alıcı maili','Gönderici Epostanın Sifresi',msg2)
## Buraya Kendi E-posta Şifre Bilgilerinizi Gİrin
sys("cls")
offline.getInfo(msg2)
offline.lastEnter()

#l_enter = dt.now() #
# Last Entering Time Saved
#l_seen_date = dt.strftime(l_enter,'%A.%B.%Y.%X Tarihinde Çıkış Yaptı') ## Console Message
#l_seen = [l_enter.day,l_enter.month,l_enter.year,l_enter.hour,l_enter.minute] ## Mail Message


if kontrol3 == True:

final_situation = Mail()

how_many_sec_online = time.time() - beginning
txt1 = "Bu tarihte girdi: "
txt2 = "Bu tarihte cikti: "
txt3 = "Bu kadar cevrimici kaldi: "
txt4 = "sn"

online_time_msg = f"""
{str(txt1)} {str(online.getFirstSeen())}
{str(txt3)} {str(int(how_many_sec_online))} {str(txt4)}
{str(txt2)} {str(offline.getLastSeen())}
"""
final_situation.sendMail('gönderici maili','alıcı maili','Gönderici Epostanın Sifresi',online_time_msg)

console_text = f"""
Nereden: {str(offline.getBotMail())}
Nereye: {str(offline.getOwnerMail())}
Konu: {str(offline.getTopic())}
Cevrimici Kaldi: {str(int(how_many_sec_online))} sn
Ne zaman girdi: {str(online.getFirstSeenDate())}
Ne zaman çıktı: {str(offline.getLastSeenDate())}
"""

final_situation.printConsoleText(console_text)

beginning = time.time()
kontrol2 = False


Kodlar tamamen bana aittir, istediğiniz soruyu yanıt olarak yada pm yoluyla sorabilirsiniz, iyi kodlamalar.
 

Attachments

  • 1-WhatsAppBot.zip
    1.8 KB · Views: 20
S

skeww

battal koçun kursundaki bottan mı yola çıktın onunkine benzettim biraz
 

Users who are viewing this thread

Top