6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Clojure で 自分のTweet を取得する

Last updated at Posted at 2014-10-04

http://fscoward.hateblo.jp/entry/2013/12/28/032821
の焼き直し

下準備

twitter4j

dependencies に [org.twitter4j/twitter4j-core "3.0.5"]を追加します。

project.clj
(defproject tweet-anime-clj "0.1.0-SNAPSHOT"
  :description "FIXME: write description"
  :url "http://example.com/FIXME"
  :license {:name "Eclipse Public License"
            :url "http://www.eclipse.org/legal/epl-v10.html"}
  :dependencies [[org.clojure/clojure "1.6.0"]
                 [org.twitter4j/twitter4j-core "3.0.5"]]
  :main tweet-anime-clj.core)

twitter4j.properties

ともかく twitter の api を使えるように consumerkey とか取得しないと話になりません。
twitter appで取得しましょう。

取得した key は twitter4j.properties にペタッと貼り付け。

twitter4j.properties
debug=true
oauth.consumerKey=xxxxxxxxxxxxxxxxxxx
oauth.consumerSecret=xxxxxxxxxxxxxxxx
oauth.accessToken=xxxxxxxxxxxxxxxxxxx
oauth.accessTokenSecret=xxxxxxxxxxxxx

配置

スクリーンショット 2014-10-04 21.02.36.png

ソースコード

core.clj
(ns tweet-anime-clj.core
  (:import [twitter4j TwitterFactory Query TwitterException]))

;; Twitter からつぶやきを取得
(defn getTweet []
  (try
    (let [twitter (.getInstance (TwitterFactory.))
           userTimeline (.getUserTimeline twitter)]
      (->> 
           userTimeline
           (map #(.getText %))
           (map println)
           doall))
    (catch TwitterException e (println (.getMessage e)))))

(defn -main []
  (getTweet))

スレッディングマクロ(->>)使うとmapのところが綺麗に書けます。

  • つぶやきたいときは
;; tweet
(defn tweet []
  (let [twitter (. (TwitterFactory.) getInstance)]
    (.updateStatus twitter "test")))

参考

スレッドマクロを整理する

終わりに

twitter4j 久しぶりに使おうとすると twitter4j.properties を忘れます。
あと、なんか twitter develop のページが変わってて https://apps.twitter.com/ に辿り着くまでに時間かかりました。

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?