Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
16
Help us understand the problem. What is going on with this article?
@kkdmgs110

PythonでWordpressの投稿を自動化してみた

More than 3 years have passed since last update.

やりたいこと

  • PythonからWordpressの投稿を行う

環境

  • Cloud9
  • Python3
  • PhontomJS *
  • Selenium *

導入は[Python データ分析入門マニュアル] > [スクレイピングをPythonでするときは、Cloud9・Selenium・Herokuで決まり!誰でもできるスクレイピングマニュアル]を参照してください。こちらにCloud9上でSelenium環境を作る方法などをすべてまとめています。

スクレイピングをPythonでするときは、Cloud9・Selenium・Herokuで決まり!誰でもできるスクレイピングマニュアル
https://review-of-my-life.blogspot.jp/2017/09/selenium-5-minutes-setup-on-cloud9.html

実装

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

スクリプト

wordpress.py

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) # "あなたのサイト名 ‹ ログイン"と表示される

#ログイン

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"と表示される

#投稿(下書き)

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

詳細

  • 手順等は省略しているので、詳細は以下の記事を読んでください。

16
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
kkdmgs110
メガベンチャーからITベンチャーに転職し、その後独立してフリーランスになり、起業。Webマーケティング、データ分析、プログラミングと嫁、吉祥寺という街が好きです。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
16
Help us understand the problem. What is going on with this article?