• 19-03-2023, 00:33:09
    #1
    Herkese iyi akşamlar. Python ile wordpress sitesinde başlık, etiket vs. ayarlamaları yapabiliyorum ancak içerik bölümüne gelince bot kapanıyor. Acaba hangi elementi nasıl bir yapıda kullanmamı önerirsiniz? Ben en son şu şekilde yaptım;

    icerik = driver.find_element(By.XPATH, '//*[@id="tinymce"]/p')
    icerik.send_keys("Örnek Metin")

    Edit: Yaptım zamanını ayırıp bakanlara teşekkür ederim.
  • 19-03-2023, 00:38:09
    #2
    Python Coder
    Wordpress siteye içerik girmek istiyorsanız selenium yerine wordpress api kullanın derim
  • 19-03-2023, 00:43:20
    #3
    @keremyagan hocama katılıyorum rest ile sorunsuz işlem olur.

    illaki yapacağım diyorsanız.
    title yazdırdıktan sonra yine title elementine send_keys(Keys.TAB) gönderip alt içeriğe geçilir
    driver.find_element(By.TAG_NAME, "p").send_keys("yazı içeriği") # ilk p tagı zaten içerik bölümünün başka türlü zor yapılır içerik bölümü bloklar halinde çünkü işaretleme yapmadan find element ile bulamazsnız
  • 19-03-2023, 00:44:32
    #4
    doganuludogan adlı üyeden alıntı: mesajı görüntüle
    Herkese iyi akşamlar. Python ile wordpress sitesinde başlık, etiket vs. ayarlamaları yapabiliyorum ancak içerik bölümüne gelince bot kapanıyor. Acaba hangi elementi nasıl bir yapıda kullanmamı önerirsiniz? Ben en son şu şekilde yaptım;

    icerik = driver.find_element(By.XPATH, '//*[@id="tinymce"]/p')
    icerik.send_keys("Örnek Metin")

    Edit: Yaptım zamanını ayırıp bakanlara teşekkür ederim.
    sendkeys yerine actions kullana bilirsiniz. sayfa aşşağıda kalıyorsa javascript ile arguments[0].scrollIntoView(true);", (object)element dediğinizde sayfayı otomatikmen element e ortalıycaktır.
  • 19-03-2023, 00:48:50
    #5
    örnek c# metodumu aşşağı bırakıyorum ihtiyacı olanlar için python ada uyarlana bilir.
     var element = Driver.FindElement(by);
    
    try
    {
    ((IJavaScriptExecutor)Driver).ExecuteScript("arguments[0].scrollIntoView(true);", (object)element);
    new Actions(Driver).MoveToElement(element).Click().Build().Perform();
    }
    catch (Exception)
    {
    }
    
    foreach (char ch in s.ToCharArray())
    {
    Thread.Sleep(35);
    new Actions(Driver).SendKeys(ch.ToString()).Build().Perform();
    }
  • 19-03-2023, 00:49:11
    #6
    kimse net bir çözüm vermemiş

    metin = wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, 'iframe#content_ifr')))
        driver.switch_to.frame(metin)
        wait.until(EC.presence_of_element_located((By.XPATH, '//body[@id="tinymce"]'))).clear()
        wait.until(EC.presence_of_element_located((By.XPATH, '//body[@id="tinymce"]'))).send_keys('MERHABA') #Wordpress Yazı Alanına Gönderilecek Yazı
        driver.switch_to.window(driver.window_handles[0])
        wait.until(EC.presence_of_element_located((By.XPATH, '//*[@id="mceu_7-button"]/i'))).click()#ORTALAMAYA TIKLAMA
  • 19-03-2023, 05:50:29
    #7
    Benim kullandığım en net çözüm excel üzerinden öncelikle metni html ye çevirip akabinde html kodu olarak metni yüklemek, böylece linkleme, iki yana yaslama, gereken yerleri bold italik yapmak gibi işlemleri otomatik olarak düzenlemiş olabiliriz..

    Tabi bunu sağlamak için öncesinde html için otomatik oluşturma için alt yapıyı hazırlamak gerekiyor..

    Özetle html olarak sorunsuz yükleme yapıyorum.