質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Instagram API

Instagram APIは、写真共有SNSであるInstagramの投稿写真をWebサイトに掲載するためのAPIです。取得することでWebサイトと連携し、自動的に投稿写真を表示することができます。

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Q&A

1回答

2921閲覧

【golang】instagram APIで画像URLを取得する方法

otokichi_

総合スコア25

Instagram API

Instagram APIは、写真共有SNSであるInstagramの投稿写真をWebサイトに掲載するためのAPIです。取得することでWebサイトと連携し、自動的に投稿写真を表示することができます。

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

0グッド

0クリップ

投稿2019/02/01 23:43

Go言語でインスタ映えしたURLを取得したいです。
go version go1.11.2 linux/amd64

下記いろいろ試していますが、画像のURLが取得できません。
https://github.com/yanatan16/golang-instagram
https://github.com/ttacon/instagram
https://github.com/ahmdrz/goinsta

一番近いかと思うのは下記です。

golang

1package main 2 3import ( 4 "fmt" 5 "github.com/yanatan16/golang-instagram/instagram" 6 "net/url" 7) 8 9func DoSomeInstagramApiStuff(accessToken string) { 10 api := New("", accessToken) 11 12 if ok, err := api.VerifyCredentials(); !ok { 13 panic(err) 14 } 15 16 var myId string 17 18 // Get yourself! 19 if resp, err := api.GetSelf(); err != nil { 20 panic(err) 21 } else { 22 // A response has two fields: Meta which you shouldn't really care about 23 // And whatever your getting, in this case, a User 24 me := resp.User 25 fmt.Printf("My userid is %s and I have %d followers\n", me.Id, me.Counts.FollowedBy) 26 } 27 28 params := url.Values{} 29 params.Set("count", "1") 30 if resp, err := api.GetUserRecentMedia("self" /* this works :) */, params); err != nil { 31 panic(err) 32 } else { 33 if len(resp.Medias) == 0 { // [sic] 34 panic("I should have some sort of media posted on instagram!") 35 } 36 media := resp.Medias[0] 37 fmt.Println("My last media was a %s with %d comments and %d likes. (url: %s)\n", media.Type, media.Comments.Count, media.Like.Count, media.Link) 38 } 39}

エラー内容

command-line-arguments

./insta.go:5:3: imported and not used: "github.com/yanatan16/golang-instagram/instagram"
./insta.go:10:10: undefined: New
(正しいアクセストークンを指定しました)

PHPだと下記でJSONを取得して簡単に画像のURLを取得する事ができています。
https://api.instagram.com/v1/users/{$instagramUserID}/media/recent?access_token={$instagramToken}&count=10

JSONを取得してデコードする方法をgolangで書くしかないでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

コンパイル時と実行時を区別すると良いと思います。
「go run」はコンパイルと実行を連続して行うので区別がつきにくいかもしれません。
「go build」はコンパイルのみを行います。今表示されているメッセージは経験的にはコンパイル時のメッセージで、コンパイルに失敗しています。

ですのでアクセストークンが正しいとかJSONデコード云々かどうかは関係ないです。
まずはコンパイルできるように修正しましょう。

参考として https://github.com/yanatan16/golang-instagram に書いている利用例をよくみてください。「New」と書いているところはどこにもありません。「xxxx.New」と書いているはずです。

投稿2019/02/05 00:51

nobonobo

総合スコア3367

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問