さくらのレンタルサーバーでPythonのTwitterライブラリを使う

はじめに 最初に書いておきます。 SSH でログインした telnet 上では Twitter のつぶやきが行えることを確認しましたが cron で動かしたり、CGI から呼び出したりはうまくいってません。 その情報がほしい方は他のサイトへどうぞ。 情報をすでに持っている方はぜひ教えてください。 ~~~~~~~~前置きここまで~~~~~~~~ Twitter の投稿を Python を使ってさくらのレンタルサーバで行いたいけども外部モジュールである simplejson や twitter をインストールしないと動かずにImportError: No module named simplejson やらImportError: No module named twitter なんかのエラーが出てしまう。 インストールに必要なもの 外部モジュールを使うためには以下の物が必要になってくる。 外部モジュールのファイル本体 さくらのレンタルサーバーのスタンダード以上のプラン FTP クライアント telnet/SSH クライアント 外部モジュールのファイル本体 使いたい外部モジュールのファイルをダウンロードしてサーバーにあげて置かなければいけません。 今回は python-twitter とその依存関係のファイル。 さくらのレンタルサーバーのスタンダード以上のプラン スタンダード以上のプランでないと telnet/SSH が使えないのでライトプランの人は諦めてください。(ノ Д`)/~ サヨーナラ FTP クライアント なくてもできるんですが、あったほうが便利なので。 現在使ってるのがなければ FFFTP を使っておいてください。 telnet/SSH クライアント 次に telnet クライアント。 これも何使っても構わないんですが、既に使ってる別のがないのであればフリーの「PuTTY ごった煮版」を使いましょう。 必要なモジュールファイルのダウンロード “python-twitter-0.8.1.tar.gz” http://code.google.com/p/python-twitter/ ...

2011-05-14 · 鉄

SourceForgeに公開鍵をputtygen.exeで生成する

SourceForgeはOpenSSHの公開鍵を登録しないと使えない機能が多いので puttygen.exe でキーを生成して登録する。 ただputtyで使うキーがSSH形式でSourceForgeで使う形式のOpenSSHと違うためそのままでは登録できない。 なので http://hiromasaya.web.fc2.com/Windows/putty.html を参考にして ssh-keygen -i -f id_rsa.pub > id_rsa_open_ssh.pub でできた id_rsa_open_ssh.pub をエディタで開いてSourceForgeの入力フィールドにコピペで登録できました。

2011-05-02 · 鉄

xyzzyからPlantUMLを使う

テキスト形式でUMLが書けるPlantUML PlantUMLはテキスト形式でUMLを記述して画像に出力できるオープンソースのソフトウェアです。 UMLが書けるフリーソフトはいくつかありますが、テキストベースで記述できるのは大変ありがたいですね。 PlantUMLの具体例 サンプルをPlantUMLのサイト内から引用します。 http://plantuml.sourceforge.net/classes.html こんなUMLが以下の記述で作れちゃいます。@startuml img/classes04.png abstract class AbstractList abstract AbstractCollection interface List interface Collection List <|– AbstractList Collection <|– AbstractCollection Collection <|- List AbstractCollection <|- AbstractList AbstractList <|– ArrayList ArrayList : Object[] elementData ArrayList : size() enum TimeUnit TimeUnit : DAYS TimeUnit : HOURS TimeUnit : MINUTES @enduml PlantUMLのインストール http://plantuml.sourceforge.net/download.html から plantuml.jar をダウンロードしてください。 plantumlの実行にはJavaが必要になりますので、もしJavaがインストールされていなければ http://www.java.com/ja/download/ からインストールを行ってください。 “Sequence Diagram” 以外の画像の出力、つまり普通に使うのであれば Graphviz もインストールする必要があります。 http://graphviz.org/Download_windows.php からダウンロードしてインストールしてください。 以上でインストールは終了です。 xyzzyからPlantUMLを使う方法 さて、次は以下のコードを siteinit.l か .xyzzy に記述してください。 ...

2010-03-28 · 鉄

Windows(cygwin+zsh)環境でRhinoを使う

Rhinoとは何か? javascript を記述するときに毎回htmlファイルを作る作業が手間なので何か方法がないか探してみた。 どうやら、JAVAで書かれたjavascript実装のRhinoでやりたい事ができるらしい。 Rhino – MDC Rhino はすべてが Java で記述された JavaScript のオープンソースな実装です。それは一般的には、Java アプリケーション環境へ組み込まれて、エンドユーザーによるスクリプトの記述が可能になります。 Rhinoのインストール方法 J2SE 6には標準で入っているらしいがEverythingで探しても見つからないので今回は http://www.mozilla-japan.org/rhino/download.html からダウンロードして使うことにする。 ダウンロード+解凍して適当なディレクトリに移動する(私の環境ではSugarSyncで共有してるディレクトリ配下のX:\sugarsync\bin\rhino1_7R2)。 スペースや日本語の文字列を含まない場所に置くのが無難だろう。 次に CLASSPATH を設定する。CLASSPATH=x:\sygarsync\bin\rhino1_7R2\js.jar export CLASSPATH # /cygdrive/x/~ の形式では java が認識しない。 これでインストールは完了したので java org.mozilla.javascript.tools.shell.Main と入力すればインタープリタが起動する。 zshrcでエイリアスの設定 しかし毎回これを打つのはあまり現実的ではないため ~/zshrc で alias を設定しておくと良い。alias js=“java org.mozilla.javascript.tools.shell.Main” インタープリタを呼び出さずに直接実行することや、jsファイルを直接指定して実行することもできる。js -e “print(‘hello’)” js -f hello.js これでjavascriptの動作をちょっと確認したいときに簡単に動かせるようになったし、JAVAで実装されているため、JAVAのクラスをjavascript内部で呼び出したりもできるようだ。 色々と遊んでいこうと思う。

2010-03-14 · 鉄

xyzzy から Rhino(javascript)を直接実行する

xyzzyから直接javascriptを使う 今回の記事はRhinoのインストールが行われてる事と xyzzy で jscript-mode がインストールされている事が前提条件になります。 RhinoのWindowsでのインストール方法については前回の記事『[Windows(cygwin+zsh)環境でRhinoを使う][1]』を参考にしてください。 今回の記事の設定を行うと xyzzy から直接Rhinoを呼び出して下の画像のように簡単なスクリプトを気軽に書けるようになります。 下記のlispはruby-modeから引っ張ってきて少し修正を加えたもので、これを ~/.xyzzy や siteinitl. に貼りつければjscript-mode で C-c C-x すれば現在編集中のバッファの javascript が実行されます。 ;;jscript-mode(for Rhino) (setf \*js-prog\* "java org.mozilla.javascript.tools.shell.Main") (setf \*js-classpath\* "X:/sugarsync/bin/rhino1\_7R2/js.jar") (defun js-run-script-immediate () (interactive) (js-run "")) (defun js-run (args) (let ((tempfile (make-temp-file-name "\_\_temp\_" "js" (default-directory)))) (write-file tempfile t nil (buffer-fileio-encoding) (buffer-eol-code)) (command-execution (concat \*js-prog\* " -f \"" tempfile "\" " args)) (delete-file tempfile :if-does-not-exist :skip))) (defun command-execution (command) (interactive "sCmmand:") (let ((proc nil)(buffer (selected-buffer))) (with-output-to-temp-buffer ("\*cmd\*" 5) (unwind-protect (setq proc (make-process command :environ \`(("CLASSPATH" . ,\*js-classpath\*)) :output(selected-buffer) :exec-directory (default-directory buffer))))) (while (eq :run (process-status proc)) (sit-for 0.05)(do-events)) (if (= 0 (point-max)) (let ((buff (selected-buffer))) (other-window) (delete-buffer buff) (delete-other-windows)) (other-window)) (message (concat " '" command "' ended.")))) (add-hook 'ed::\*jscript-mode-hook\* #'(lambda () (define-key ed::\*jscript-mode-map\* '(#\C-c #\C-x) 'js-run-script-immediate))) *js-classpath* と define-key は好みに合わせて適宜変更の事。 ...

2010-03-14 · 鉄