Python3.xとSeleniumでFc2ブログに自動投稿するよ

自動化/自動操作Selenium

どうも、以前の記事ではXML-RPCの機能を使ってFc2ブログに記事を投稿しました。しかし、この方法だと記事の本体部分はタイトルと本文だけで、追記やタグに記述することはできません。

そこで今回はテストツールであるSeleniumを使ってブラウザ自動操作することでFc2に記事を投稿してみようと思います。今回の記事でもSeleniumはすでに環境構築ができているものとして書いていくので、まだの方は以前の記事なんかを参考に整えておいてください。



OS : Ubuntu 16.04 LTS
OS : CentOS 7
Python : 3.5.2
Selenium : 2.53.6


1. config.pyファイルの作成

さて、まずはコンフィグファイルを作成します。正直作成する意味はないのですが、複数サイトに投稿する場合は、ほぼほぼこのファイルを量産するだけになるので便利です。このファイルを次に書くプログラムのファイルと同じディレクトリに入れておいてください。

ちなみに、普段はDBなどのログイン情報もこのコンフィグファイルに記述しています。パスワードが直書きになりますが、利便性には勝てません。うまい管理方法はありませんでしょうか。

2. 今回書いたコード

さて、次が今回のメインになるコードを掲載します。

記事を構成する部分はtitle, tags, txt1, txt2です。これをedit_postに引数で渡すことで記事を投稿する処理を行います。正直、蛇の足が書いてある割にはコードの構成が悪い気がします。まぁ、動作確認ということで目をつぶってください。


コーディングで分からないことがあれば
プログラミングや環境構築で分からないことがあったら『teratail』というエンジニア特化型のQ&Aサービスがオススメです。自分もどうしても分からないことがあったら、時々質問しにいきますが、かなりニッチな質問にも意外と早く回答がつくのでとても頼もしいです。という宣伝でした。


おわりに

さて、ここまでテキトーに書いてきました。今回は最低限の機能ということで掲載しました。投稿を完全に自動化したかったらこのコードにDBなどから情報を取ってくる処理を追加すればいいと思います。ちなみに、この方法で記事を投稿するのは規約的に大丈夫かわからないので、ご利用の際は自身でご確認ください。