2017-11-03

PythonからWordpressに自動投稿するスクリプトを作りました。



PythonからWord Press自動投稿するスクリプトを作りました。

環境

- Cloud9
- Python3
- PhontomJS * 
- Selenium  * 


アルゴリズム


- ワードプレスのログイン画面に移動
- IDとパスワードを入力
- 送信ボタンを入力
- 新規投稿画面に移動
- タイトルと内容を入力
- 下書き保存をクリック

スクリプト


from selenium import webdriver #seleniumのimport
import time

browser = webdriver.PhantomJS() 
loginURL = "http://yoursite.com/wp/wp-login.php" #yoursite.comにはあなたのサイトのアドレスを書いてください
browser.get(loginURL)
time.sleep(3)
print(browser.title) # "あなたのサイト名 ‹ ログイン"と表示される

#sign-in

username = "" #あなたのユーザー名を入れてください
password = "" #あなたのパスワードを入れてください

browser.find_element_by_css_selector("#user_login").send_keys(username)
browser.find_element_by_xpath("//*[@id='user_pass']").send_keys(password)
browser.find_element_by_css_selector("#wp-submit").click()
time.sleep(3) # waiting for sign in 

print(browser.title) #"ダッシュボード ‹ あなたのサイト名 — WordPress"と表示される

#post 

browser.get("http://yoursite.com/wp/wp-admin/post-new.php")
time.sleep(3) # waiting for sign in 
print(browser.title) #"新規投稿を追加 ‹ あなたのサイト名 — WordPress"と表示される

title = "Test"
content = "test post"
browser.find_element_by_css_selector("#title").send_keys(title)
browser.find_element_by_css_selector("#content_ifr").send_keys(content)
browser.find_element_by_css_selector("#save-post").click
time.sleep(3) #waiting for post


これで投稿の下書きが完成します。



その他


今回はただポストするだけなのですが、ほかのサイトからとってきた複数のデータをfor文で回して自動生成とかも余裕でできそうなので、時間があるときにやってみます。

注目の投稿

 PythonのTweepyを利用して、Twitter APIを利用している。 その中で、ハマったポイントをメモしておく。 まず、Searchに関して。 Twitter検索は、クライアントアプリ側では、全期間の検索が可能になっている。 一方で、APIを利用する際は、過去1週間しか...