Hoşgeldin, Ziyaretçi:

l Üye Ol

Facebook ile Giriş
Tarih: 18-08-2019, Saat: 10:57
  • http://qpython.club'e Hoşgeldiniz!
  • Forum Kurallarını okumayı unutmayınız.
  • İyi Forumlar...
  • Python Kodları
  • qpython.club Adresimiz Aktiftir...

Turbobit Çeviri [BETA]        PuhuTV indirme        YouTube Direkt Link            Facebook Grubu

USD: ---      EUR: ---      BTC: ---

Python Kodları > Programlama Dilleri > Python > Facebook ve selenium ile yukleme yapma >

 Yorum: 7    Görüntülenme: 1562
Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
 Facebook ve selenium ile yukleme yapma
16-12-2018, Saat: 11:57, (Son Düzenleme: 16-12-2018, Saat: 12:01, Düzenleyen: oktay811.)
Çevrimdışı
Vip üye
Vip Üye
Üyelik Tarihi: 24-01-2017
Mesajlar : 676
Konular:
Rep Puanı: 4
#1
Facebook ve selenium ile yukleme yapma

Facebook da gruba dosya yüklemek için selenium ile yaptığım basit bir kod. Facebook dilini ingilizce yapın, windows da chrome ile sıkıntısız 100 den fazla partı yükledi.

"pip install selenium" ile selenium modülünü yükledikten sonra, bu scriptin olduğu klasöre http://chromedriver.chromium.org/downloads buradaki chromedriver.exe dosyasını eklemeyi unutmayın.

PHP Kod:
# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium
.webdriver.common.keys import Keys
from selenium
.webdriver.common.action_chains import ActionChains
import time
ossys

print(
"""
############################################################

#- Facebook Dosya Yukleme

#- windows-chrome icin

############################################################
"""
)

reload(sys)  
sys
.setdefaultencoding('utf8')
yer str(os.path.dirname(os.path.abspath(sys.argv[0])))+str(os.sep)
#Selenium Ayarlari, Ubuntu da kullanacaksaniz burayi mutlaka degistirin
chrome_options webdriver.ChromeOptions()
prefs = {"profile.default_content_setting_values.notifications" 2#chrome da bildirim engellemek icin
chrome_options.add_experimental_option("prefs",prefs)
chrome_options.add_argument("--incognito"#gizli sekmede islem yapmak icin
driver =webdriver.Chrome(yer+"chromedriver.exe",chrome_options=chrome_options)
print 
driver.session_id
    

def giris
(username,password):
        driver.get("https://en-gb.facebook.com/")
        driver.find_element_by_id("email").click()
        driver.find_element_by_id("email").clear()
        time.sleep(1)
        driver.find_element_by_id("email").send_keys(username)
        driver.find_element_by_id("pass").click()
        driver.find_element_by_id("pass").clear()
        time.sleep(1)
        driver.find_element_by_id("pass").send_keys(password)
        try:
            driver.find_element_by_id("pass").send_keys(Keys.ENTER)
        except:
            driver.find_element_by_id("u_0_2").click()
        time.sleep(5)
def yukle(sira,gkod):
        driver.get("https://www.facebook.com/groups/"+str(gkod)+"/files/")
        for i in sira:
            #print i.split(os.sep)[-1]
            try:
                driver.find_element_by_link_text("Upload FileUpload File").click()
                time.sleep(2)
            except:
                driver.find_element_by_xpath("(.//*[normalize-space(text()) and normalize-space(.)='Create Doc'])[1]/following::i[1]").click()
                time.sleep(2)
            sec=driver.find_element_by_name("file1").send_keys(i)
            time.sleep(2)
            try:
                driver.find_element_by_xpath("(.//*[normalize-space(text()) and normalize-space(.)='Select a file on your computer (Max size 100 MB)'])[1]/following::button[1]").click()
                time.sleep(2)
            except:
                sec.send_keys(Keys.TAB)
                time.sleep(0.5)
                sec.send_keys(Keys.ENTER)
                        
            time
.sleep(int(os.path.getsize(i))/(1024**2)) #her 1mb yukleme icin 1sn bekleyecek            
            while True:
                tag=driver.find_element_by_xpath('//*[@id="group_files_'+str(gkod)+'"]/li[1]').text
                
if str(tag).find(i.split(os.sep)[-1]) == -1:
                    print "Dosya henuz yuklenmemis, biraz daha bekleyelim."
                    time.sleep(10)
                else:
                    os.remove(yer+i#yuklenen partlari silmek icin
                    break
            print str(i.split(os.sep)[-1])+" yuklendi."
        print "Tum partlar yuklendi."
partlar=raw_input("Yuklenecek dosyalarin oldugu dizin,\nubuntu icin '/root/film/'\nwindows icin 'c:\\user\\desktop\\film\\' \nseklinde girin:\n")            
username
=raw_input("kullanici adi:\n")
password=raw_input("Sifre:\n")
gkod=raw_input("Grubun web sayfasinda 'https://www.facebook.com/groups/<kod veya isim>/files/'  kod veya ismi lazim:\n")          
giris
(username,password)
#time.sleep(10)
sira=[]
for 
i in os.listdir(partlar):
    sira.append(partlar+i)
    
yukle
(sira,gkod
(Son Düzenleme: 16-12-2018, Saat: 12:01, Düzenleyen: oktay811.)
16-12-2018, Saat: 11:57
Cevapla
16-12-2018, Saat: 12:51,
Çevrimdışı
Kıdemli Üye
new üye
Üyelik Tarihi: 15-04-2017
Mesajlar : 196
Konular:
Rep Puanı: 1
#2
Cvp: Facebook ve selenium ile yukleme yapma

umarim linux ubuntu da çalişir. birazdan deneme yaparim.face paketimiz bitti ama elbet bir süre sonra benzer paketler cüzi fiyata veya bir takim paketlerin yaninda hediye olarak vereceklerdir.
16-12-2018, Saat: 12:51
Cevapla
16-12-2018, Saat: 14:32,
Çevrimdışı
Vip üye
Vip Üye
Üyelik Tarihi: 24-01-2017
Mesajlar : 676
Konular:
Rep Puanı: 4
#3
Cvp: Facebook ve selenium ile yukleme yapma

Ubuntu icin selenium ve driver ayarlarını değiştirsen yeterli, sitedeki taglar zamanla veya tarayıcıya göre değişmediği sürece sıkıntı olmaz.
16-12-2018, Saat: 14:32
Cevapla
17-12-2018, Saat: 09:37,
Çevrimdışı
Kıdemli Üye
new üye
Üyelik Tarihi: 28-04-2016
Mesajlar : 194
Konular:
Rep Puanı: 0
#4
Cvp: Facebook ve selenium ile yukleme yapma

Time sleep niye kullandın anlamadım, insanların bilgisayarı yavaşsa o süre zarfında işlem yapamazsa kod expcete düşmeyecek mi?
17-12-2018, Saat: 09:37
Cevapla
17-12-2018, Saat: 12:18,
Çevrimdışı
Vip üye
Vip Üye
Üyelik Tarihi: 24-01-2017
Mesajlar : 676
Konular:
Rep Puanı: 4
#5
Cvp: Facebook ve selenium ile yukleme yapma

@Ezio tam tersine, vps ramleri düşük olduğu için selenium tarayıcıda tagleri bulamayınca hata veriyor. Ben de tarayıcıda sitenin tam açılması için time.sleep koydum. Vps lerde ağır çalışması için yapmıştım. Eğer pc özellikleri iyi ise time.sllepleri kaldırabilirsin.
Mesela;
try:
driver.find_element_by_link_text("Upload FileUpload File").click()
time.sleep(2)
except:
driver.find_element_by_xpath("(.//*[normalize-space(text()) and normalize-space(.)='Create Doc'])[1]/following::i[1]").click()
time.sleep(2)

Burada dosya yükleme penceresinin açılması için try kısımında click yaptıktan sonra 2 saniye pencerenin açılması için bekliyor sonra "sec=driver.find_element_by_name("file1").send_keys(i)" burada da listedeki dosyanın ismini yazdırıyor sonra devam ediyor.
Eğer time sleep koymazsak yükleme penceresinin açılmasını beklemeden hemen ismi göndermeye çalışacak, ama pencere henüz açılmadığı için hata verecek.
except kısmında ise dosya yükleme ekranını başka yolla açmak için koydum. İlki işe yaramazsa diye..
17-12-2018, Saat: 12:18
Cevapla
17-12-2018, Saat: 18:00,
Çevrimdışı
Süper Üye
Üye Grubu
Üyelik Tarihi: 14-09-2017
Mesajlar : 255
Konular:
Rep Puanı: 3
#6
RE: Facebook ve selenium ile yukleme yapma

turkcellde face paketi var mı hâla?
17-12-2018, Saat: 18:00
Cevapla
17-12-2018, Saat: 18:30,
Çevrimdışı
Kıdemli Üye
new üye
Üyelik Tarihi: 15-04-2017
Mesajlar : 196
Konular:
Rep Puanı: 1
#7
Cvp: RE: Facebook ve selenium ile yukleme yapma

(17-12-2018, Saat: 18:00)excel Nickli Kullanıcıdan Alıntı: turkcellde face paketi var mı hâla?

yok diye biliyorum. ha saçma bir face paketi var fakat hem sınırlı ve kotasi düşük, hem de buna göre fiyatı pahali. şu an en uygunu turktelekomda aylik 9 tl sinirsiz face paketi diye biliyorum
17-12-2018, Saat: 18:30
Cevapla
17-12-2018, Saat: 19:36,
Çevrimdışı
Admin
Admin Grubu
Üyelik Tarihi: 02-02-2016
Mesajlar : 6,332
Konular:
Rep Puanı: 125
#8
Cvp: Facebook ve selenium ile yukleme yapma

ttelekomdaki 1gb dan sonra hız sınırına giriyor diye biliyorum ben de. Vodafone'da var sosyal pass paketi, bu paket sınırsız ve kısıt yok. Ama haftalık 7 liraydı sanırım, bi ara kullanmıştım bir şeylerle uğraşırken.
17-12-2018, Saat: 19:36
Cevapla
« Önceki Konu | Sonraki Konu »
Konuyu Okuyanlar: 1 Ziyaretçi



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  telegram bot yapma yardım html rapidleech aras5757 1 100 30-07-2019, Saat: 17:45
Son Yorum: gecemor
  Google Documents' e dosya yükleme oktay811 7 570 18-06-2019, Saat: 07:19
Son Yorum: ahmettepe
  Python 3.6 .exe yapma SD-16 11 2,108 21-02-2019, Saat: 02:00
Son Yorum: lydia
  Eski Facebook'a Url'den Video Yükleme gecemor 463 117,861 02-02-2019, Saat: 18:39
Son Yorum: gecemor
  facebook accessToken alma ahgonlum 14 2,711 20-11-2018, Saat: 22:35
Son Yorum: joes001

Hızlı Menü:

Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB
© 2002-2019 MyBB Group.
ImAdige theme by IMADIGE © 2015.