Kendi Steemit Oyveme Botumuzu Yapalım -1

in #tr7 years ago (edited)

Malum Steemit üzerinde botlar var. @keepcalmandread ve @hsynterkr gibi arkadaşların bi şey yapmalı sözleri harekete geçirdi. Sağolsunlar. Ama hala botların nasıl Kar ettiğini henüz çözebilmiş değilim. Bilal'e anlatır gibi, tane tane, örnek rakamlarla anlatacak*[1] birisi olursa çok makbule geçer ;)

Biraz dolambaçlı yollardan gideceğiz belki ama birlikte öğrenerek ilerleyebiliriz.

baslik.jpg

Hazırlık!

Öncelikle Python'a ihtiyacımız var.
Video: Python 2.7 kurulumu ve Path ayarı

İkinci olarak ihtiyacımız olan modülleri yükleyelim.
Bunun için Başlat düğmesi ardından CMD yazarak, komut istemini çalıştırın. Bu nostaljik siyah ekranda aşağıdaki satırlardan ilkini yazıp enter'a basın. Kurulum tamamlanınca diğerleri için de aynı işlemi yapın.

pip install re

pip install time

pip install requests

pip install selenium

pip-install.jpg

Kodlama Başlasın!

Python'u NotDefteri'nde bile yazabilirsiniz. Ancak daha anlaşılır olması için default olarak gelen IDLE'ını ya da daha cicili bicili olamasını isterseniz Sublime Text'i kullanabilirsiniz.

Botumuzu oylama için kullanacağız bu yüzden kullanıcı adı ve özel anahtara (private posting key)'e ihtiyacımız var.
kullanici
sifre_key
Key'inizi https://steemit.com/@KULLANICIADINIZ/permissions sayfasında bulabilirsiniz. (Dikkat, önce Show private key'e tıklamalısınız. Bize lazım olan o.)

kullanici = 'murattatar'
sifre_key = '5TAbiKi8bU3BeNIm8KEYim2DeGiL4PnR8NrzNJQmjtoK5qQG4n9E'

Biraz önceki modüllerimizi import edelim.
import re
import time
import requests
from selenium import webdriver as web
from selenium.webdriver.common.keys import Keys

kod-2-import.jpg

Oyver fonksiyonu

ChomeDriver'ı sayfa olarak ayarlayalım. Bunu normal Chrome gibi kullanacağız. (Aynı klasöre indirmek daha sağlıklı olabilir)

kod-3-sayfa.jpg

def Oyver(url): Oyverme fonksiyonumuza bir isim tanımlayalım.
sayfa.get(url) linkimizi çağıralım
sayfa.implicitly_wait(10) sayfanın açılmasını bekleyelim

Mavi oy ver düğmesine mavi-dugme.jpg tıklayacağız ama bunun için görünür alanda olması lazım. Bundan emin olmak için 20 defa sayfayı aşağıya kaydırıyoruz.

kod-4-inme.jpg

Tabi bir de daha önce tıklanmış mı ona bakmamız lazım. Tıklanmadı ise Voting__button-up class'ına bakarak düğmeyi buluyor ve tıklıyoruz.

kod-5-try.jpg

Tıklama sonrası Kullanıcı adı ve Key soran ekran geliyor. Bu alanlara botumuzun başlarken yazdığımız bilgileri girmesini sağlıyoruz.

kod-6-pass.jpg

Tamamdır. Şimdi Oyver() fonksiyonumuz, adresini verdiğimiz yazıya oy verecektir ;)
Örneğin:
adr = "https://steemit.com/busy/@murattatar/busy-sen-n-aptin-oeyle"
Oyver(adr)

Şimdi, şu ana kadar yazdıklarımızı toplu halde görelim:


''' steemitBOT v1 # by Murat Tatar # Ekim 2017 '''
''' Kullanici Adi ve Private Posting Key giriniz
Key bilgisi isin asadaki adresi kendiniz icin duzenleyin
https://steemit.com/@KULLANICIADINIZ/permissions '''
kullanici = 'murattatar'
sifre_key = '5TAbiKi8bU3BeNIm8KEYim2DeGiL48NrzNJQmjtoKPnR5qQGn9E'
import re
import time
import requests
from selenium import webdriver as web
from selenium.webdriver.common.keys import Keys
''' Oy Verme Fonksiyonu '''
sayfa = web.Chrome("chromedriver.exe")
def Oyver(url):
sayfa.get(url)
sayfa.implicitly_wait(10)
say = 20
while say > 0:
bodyElement = sayfa.find_element_by_tag_name('body')
bodyElement.send_keys(Keys.PAGE_DOWN)
time.sleep(.2)
say = say - 1
try:
sayfa.find_element_by_xpath(".//a[@title='Remove Vote']")
continue
except Exception as msg:
try:
oydugmesi = sayfa.find_element_by_class_name('Voting__button-up')
oydugmesi.click()
time.sleep(1)
kullaniciKutusu = sayfa.find_element_by_name('username')
kullaniciKutusu.send_keys(kullanici)
time.sleep(.2)
sifre_keyKutusu = sayfa.find_element_by_name('password')
sifre_keyKutusu.send_keys(sifre_key)
time.sleep(.2)
sifre_keyKutusu.send_keys(Keys.RETURN)
say=0 #while dongu durmasi icin
except:
pass
adr = "https://steemit.com/busy/@murattatar/busy-sen-n-aptin-oeyle"

Oyver(adr)

all-1.jpg

OyVer hazır. Sublime Text için Ctrl+B, default IDLE için F5 tuşlarına basarak çalıştırabilirsiniz. NotDefteri kullanıyorsanız benim bir şey dememe gerek yok sanırım


Kimler size hangi Memo(link) ile SBD $ göndermiş? (bilelim ki Bot onlara geri dönüş yapsın) yakında..
Tüm görseller @murattar

Sort:  

Teşekkürler tekrardan,
bir kaç python dersi daha izlemem gerekiyor sanırım.
pip install komutu girdiğimde modül bulunamadı gibi bir hata veriyor bende 2.7 yükleyerek tekrar deneyeceğim. Yatırım tavsiyesi gibi bir post hazırladım sayılır fakat python videoları izlemekten ona bakamadım son bir kaç gündür :) bir çok fonksiyonu çalıştırmayı denedim ve çalıştığını gördüm fakat from import install komutlarında modül ile ilgili bir hata veriyor benden kaynaklı olarak biraz daha dersime çalışıp geri döneceğim :)

Bu arada;
Buradaki botumuz Steemit arayüzünden işliyor. @emrebeyler'in de yeni yazmış olduğu bir bot var. O direk blok zincirini kullanıyor.

This post has been resteemed by @msp-turkey courtesy of @damla from the Minnow Support Project ( @minnowsupport ). Join us in Discord.

Upvoting this comment will help support @minnowsupport.

Ya baya baya her yanımız programcıymış arkadaş. Takdir ediyor, botlarınızın pardon başarılarınızın devamını diliyorum.

gayet başarılı teşekkürler bilal halen soruyor" bu paraları nasıl kazandık baba" diye :d bot kısmında bende soruyorum nasıl kazanıyorsunuz len bizede soleyin :D

aynen :)
Minnowbooster 5$'a 7$ veriyor bazen. Diyelim ondan başka kimse oy vermemiş olsun. %25'lik kürasyonun tamamını o olacak ama o da 7$/4= 1.75$ yapıyor.
0,25 zararda.. (?)

Onun sistemini değiştirdiler şimdi daha güzel güncelleme yapıyorlar Umarım başarılı olurlar Bizde bol bol kullanırız

Artık biz de yapsak nasıl olur bu bir fikirdir istiyorsan bu konuyu detaylıca görüşelim

Matematik olarak, -0,25'i hala çözemedim.
Yazar için +1$, bot için +0,25 getirisi olan bir sistemi anlatacak her kişiyi uzun uzun dinleyebilirim :)

Matematikten anlayan çok iyi bir dostum var Yakında kendisini burada çok iyi şekilde ağırlamak istiyorum Müsait olduğun zaman da discorddan detaylıca hesaplama tablosu gönderelim Kendisi bu işin uzmanıdır matematikle rakamlarla arası çok iyi bize bir formül bulur inşallah

Bana yardimci olabilir misin bot programlama konusunda? Discorddan yazdım.

@melih Dönüş yaptım.


This post was resteemed by @funaddaa!
Good Luck!

Resteem your post just send 0.100 SBD or Steem with your post url on memo. We have over 3600+ followers. Take our service to reach more People.

just send 1 SBD or Steem with your post url on memo we will resteem your post and send 10 upvotes from our Associate Accounts.

The @funaddaa users are a small but growing community.
Check out the other resteemed posts in funaddaa's feed.
Some of them are truly great. Please upvote this comment for helping me grow.

Congratulations! This post has been upvoted from the communal account, @minnowsupport, by Murat from the Minnow Support Project. It's a witness project run by aggroed, ausbitbank, teamsteem, theprophet0, someguy123, neoxian, followbtcnews/crimsonclad, and netuoso. The goal is to help Steemit grow by supporting Minnows and creating a social network. Please find us in the Peace, Abundance, and Liberty Network (PALnet) Discord Channel. It's a completely public and open space to all members of the Steemit community who voluntarily choose to be there.

This post received a 20% vote by @msp-turkey courtesy of @damla from the Minnow Support Project ( @minnowsupport ). Join us in Discord.

Upvoting this comment will help support @minnowsupport.

Coin Marketplace

STEEM 0.16
TRX 0.15
JST 0.028
BTC 57864.88
ETH 2274.11
USDT 1.00
SBD 2.54