non vorrei lavorare

2020年度からの小学校プログラミング教育の必修化を親として迎えるブロガーの書く、子供との日常

Julia言語でTwitterのAPIを叩いてみた

こんばんは。次男が、体調を崩し、保育園呼び出しがあり、実家生活を送っていたら、今度は長男がインフルエンザB型になってしまい、しばらく実家生活をしていた@kjunichiです。

背景

dailyportalz.jp

なる記事を見て

Twitterで位置情報を指定してツイートを取得できることに興味をもち、

qiita.com

をみつけて、プライバシーの問題で徐々に位置情報が扱えなくなりつつあるが、 まだ使えるようだったので、Juliaでできないかやってみた。

Twitter.jl発見!

この手のWeb APIを利用するパッケージ、すでにあるのだろうな?と思ってググると発見。

github.com

ありました。Twitter専用のものでした。Githubでみたら、直近のコミットがついこの前。これは動くだろう。

Twitter.jlをとりあえず動かす。

Githubページからたどれるドキュメントとは現在はちょっと違うAPIになっているようで、 README.mdを参照し、テストコードのコードを見ながら試したところ動かせた。

まずはTwitter APIを使うための認証

Twitterの開発者向けページであらかじめアプリ向けの登録が必要なようです。

大分昔に、Twitterの開発者登録を済ませていて、必要なのは、以下の情報だった。

f:id:kjw_junichi:20200216231905p:plain

f:id:kjw_junichi:20200216231931p:plain

ものがモノだけに念のため、マスクしてます。。

これらをREADME.mdの記述されている各変数にいれればOKでした。

成果物

import Pkg
Pkg.add("Twitter")

using Twitter

apikey = "apikey_wo_ireru"
apisecret = "apisecret_wo_ireru"
accesstoken = "accesstoken_wo_ireru"
accesstokensecret = "accesstokensecret_wo_ireru"

twitterauth(apikey,
            apisecret,
            accesstoken,
            accesstokensecret)

tweets = get_search_tweets(q = "グラベルロード", geocode = "35.4657901,139.6201245,100km", count = 10)

get(tweets,"statuses",0)

Dict形式でAPIのパラメータを指定すれば、QiitaのPythonでのAPIの説明同様に動きそうでした。

検索結果が0件だと、Juliaのエラーになってしまうようです。

おわりに

今回は、APIを使えそうだというところまでの確認で力尽きたw

参考資料

関連記事

13年前の記事