Kayıt Ol

Giriş


Şifremi Kaybettim

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

soru ekleme

You must login to ask question.

Giriş


Kayıt Ol

Merhaba, kayıt formu üzerinden kayıt olabilirsiniz. Fakat sosyal medya ile kayıt olmanızı önermekteyiz.

Python WordPress Yazı Yollama

Python WordPress Yazı Yollama

Merhabalar, WordPress’in xmlrpc apisinin sağladığı özellikleri kullanarak, python üzerinden yazı yollama işlemi yapacağız. Bunun için bir kaç paket inceledim ve en uygununu seçtim. Seçtiğim paket “python-wordpress-xmlrpc” çok geniş özelliklere sahip bir pakettir.

  • WordPress 3.4+ versionlarını kapsamaktadır. Yani güncel wordpress versionları için geliştirilmiş bir pakettir.
  • Python 2.6 ve Python3.x versionlarını kapsamaktadır.

Kurulum (python-wordpress-xmlrpc)

Kuracağımız paketler PyPI üzerinden yüklenecektir.

Pip ile kurulumu için ;

veya ;


  • Kurulum aşamaları bittiğine göre wordpress testlerine geçicez fakat, bir wordpress site sahip olmanız gerekiyor. Ücretsiz wordpress site sahip olmak için : https://wordpress.com/ adresine giriş yapınız, bir hesap oluşturup web sitenizi oluşturun. Bu sayede testleri yapabilirsiniz.

Test aşamaları için bir tane hesap oluşturdum, “https://eniyikisiselblog.wordpress.com/” bunun üzerinden  örnekleri yapicam.


Yayınlanmış Yazıları Görme :

  • Öncelikle, yüklediğimiz paketi eklememiz gerekiyor :

  • Veritabanı mantığı gibi düşünelim, bir Connect parametresi yaratmamız gerekiyor :

  • Bu şekilde bir Client yapısı oluşturmamız gerekiyor, ilk parametre site olacaktır ama /xmlrpc.php sonunda olması gerekiyor dikkat edelim. Daha sonra kullanıcı ve şifrenizi yazdıktan sonra connect işlemi olacaktır.
  • Şimdi yayınlanmış yazılarına bakalım :

  • Sahip olduğu yazıları “yazilar” adlı değişkene aktardık tabi bir dizi şeklinde olduğu için döngü ile tek tek ekrana yazdırdık şimdi çıktıya bakalım :

Harika, tüm yayınlanmış yazıların “başlıklarını” ekrana yazdırdı.

Kayıtlı Kullanıcıları Görme

  • Kullanıcı Bilgilerini “GetUserInfo()” ifadesi ile çekmekteyiz.

Çıktı :

python wordpress yazi yolla

Yazı Yollama

Belki en çok kullanılan işlemdir. Şimdi sahip olduğumuz wordpress sitesine yazı yollayalım.

Yazı yollama(post) işlemleri için yeni bir modül eklememiz gerekiyor :

  • Şimdi yazı yollayabiliriz :

  • Makale başlık, içerik, etiket ve kategori belirleyip yazıyı yayınladık ve yayınlanan yazının url bilgisini aldık.
  • dolasıyla çıktı şöyle olacaktır : 

Url’e giriş yaptığınızda, yazının yayınlanmış olduğunu fark edeceksiniz.

Ek olarak, bir web siteden veri çekme işlemide işinize yarayacaktır. Onun içinde bir makale yazmıştım ;

Python Kullanarak Web Siteden Veri Çekme

Anlatacaklarım bukadar… Umarım faydalı olmuştur.

Kaynak : https://python-wordpress-xmlrpc.readthedocs.io

Hakkında Ali YamanProfesyonel

Herzaman bilginin gücüne inanlardan oldum , araştirmalarım ve deneyimlerimlerimi sizlere sunmayı amaçlıyorum. İstanbul Üniversitesi Kontrol ve Otomasyon Öğrencisiyim Elektronik ve Programlama ile ilgim var.


Beni Takip Et

Yorumlar ( 8 )

  1. bana şöyle bir hata geliyor
    ——————-
    TimeoutError: [WinError 10060] Bağlanılan uygun olarak belli bir süre içinde yanıt vermediğinden veya kurulan

    bağlantı bağlanılan ana bilgisayar yanıt vermediğinden bir bağlantı kurulamadı

    • Bağlantı kurduğunuz site adresinizi;

      “wp = Client(‘https://eniyikisiselblog.wordpress.com/xmlrpc.php’, ‘Kullanıcı Adı’, ‘Şifre’)”

      örnekkteki gibi sonunda “/xmlrpc.php” ekini eklediniz mi?
      Ayrıca kullandını adınızı ve şifrenizi kontrol edin. Başına http eklediniz mi? Bunları kontrol edin büyük ihtimal sorun bunlardan kaynaklanıyor.

      • Hocam şimdi oldui https yerine http yapınca düzelttim. Bundan başka wordpress son sürümlerinde ayarlar>genel sekmesinde xmlrpc enable kutucuğu çıkmıyor. xmlrpc enable yapmak için biraz araştırdım eklentilerden “Control XML-RPC publishing” eklentisini indirerek hallettim.
        teşekkürler, saygılar.

  2. Hocam bir sorum olacak. Arduino, raspberry pi veya başka bir gömülü sistemden elde ettiğimiz analog bir değeri, pythondan yine xmlrpc modülünü kullanarak, wordpress de kendi hazırladığımız siteye gönderebilirmiyiz?
    Teşekkürler, saygılar

    • Tabi münkün, sanırım bu işlemi “Serial Port” üzerinden gerçekeleştireceksiniz. Yani PC’e bağlı olan arduino karttan bilgiler alip siteye göndermek gibi bir amacınız var ise, http://www.python.tc/python-ile-arduino-haberlesmesi/ adlı linkle bakabilirsiniz. Onun dışında raspberry pi içerisinde bir python script yazarak, doğrudan cihaz çalışırken bilgileri wordpress’e aktarabilirsiniz.

      • arduino-python haberleşmesinde ki sonuç alacağımız “serialport.readline()” ifadesini bu sayfada verdiğiniz xmlrpc modülü ile nasıl bir python programı ile birleştirebilirz, yani wordpress de kendi hazırladığımız web sitesinde görmek için.
        2. sorum ise siizn verdiğiniz örmek de sadece bir led ‘li durum var. led yerine kendi aralarında haberleşen sensörler oluştuğu durumda (bir fabrika ortamında arduino yetersiz kalacaktır) yani nesnelerin interneti(iot) diyebileceğimiz bir ortamda python ve wordpress gibi bir internet sitesi arasında pythonun hangi modülleri ve fiziksel olarak hangi gömülü sistemler kullanılır.
        teşekkürler.

        • Aslında böyle bir işlem için “veriyi al” –> “wordpress” aktar olayı çok sıkıntı olabilir. MQTT servisini kullanmanız daha faydalı olabilir. Sizin sorunuza gelirsem, “serialport.readline()” adlı komut ile arduino’dan okuduğunuz veriyi wordprses’e içerik olarak ekleyebilirsiniz. Artık nasıl isterseniz.

Bir Cevap Yaz

Captcha Captcha güncellemek için resime tıkla