Tweet 埋込み tag って API で取れたのね

img

このURL https://publish.twitter.com/oembed?url=*** で取れるのよ.知らなかったけど,普通に公式のドキュメントに書いてあった.下の例は,その下のツイートの埋め込みURLを取得するためのURLね.

https://publish.twitter.com/oembed?url=https://twitter.com/NPlaythrough/status/1149876122139545600
埋め込み

さっきのURLにアクセスすると,こんな感じのJSONが返ってくる.実際には改行されてないけど,ここでは見やすさのために改行しました.あと良く見るとUnicodeがエスケープされてることにも注意 (当然なのかも知れないけど…).

{
   "url":"https:\/\/twitter.com\/NPlaythrough\/status\/1149876122139545600",
   "author_name":"Nintendo Playthrough",
   "author_url":"https:\/\/twitter.com\/NPlaythrough",
   "html":"\u003Cblockquote class=\"twitter-tweet\"\u003E\u003Cp lang=\"en\" dir=\"ltr\"\u003ELet's take a look at Nintendo Playthrough 1 Minute! [SMO #071]\u003Ca href=\"https:\/\/twitter.com\/hashtag\/NP1M?src=hash&ref_src=twsrc%5Etfw\"\u003E#NP1M\u003C\/a\u003E Full story here ▶ \u003Ca href=\"https:\/\/t.co\/nvO2tnovYG\"\u003Ehttps:\/\/t.co\/nvO2tnovYG\u003C\/a\u003E\u003Ca href=\"https:\/\/t.co\/xQsGTguCC6\"\u003Epic.twitter.com\/xQsGTguCC6\u003C\/a\u003E\u003C\/p\u003E— Nintendo Playthrough (@NPlaythrough) \u003Ca href=\"https:\/\/twitter.com\/NPlaythrough\/status\/1149876122139545600?ref_src=twsrc%5Etfw\"\u003EJuly 13, 2019\u003C\/a\u003E\u003C\/blockquote\u003E\n\u003Cscript async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"\u003E\u003C\/script\u003E\n",
   "width":550,
   "height":null,
   "type":"rich",
   "cache_age":"3153600000",
   "provider_name":"Twitter",
   "provider_url":"https:\/\/twitter.com",
   "version":"1.0"
}

この中の html 要素を,Unicodeエスケープを解除して整形するとこんな感じ.

<blockquote class="twitter-tweet"&gt;
  <p lang="en" dir="ltr"&gt;Let&#039;s take a look at Nintendo Playthrough 1 Minute! [SMO #071]
    <a href="https://twitter.com/hashtag/NP1M?src=hash&amp;ref_src=twsrc%5Etfw"&gt;#NP1M</a&gt;Full story here ▶
    <a href="https://t.co/nvO2tnovYG"&gt;https://t.co/nvO2tnovYG</a&gt;
    <a href="https://t.co/xQsGTguCC6"&gt;pic.twitter.com/xQsGTguCC6</a&gt;
  </p&gt;&mdash; Nintendo Playthrough (@NPlaythrough) 
  <a href="https://twitter.com/NPlaythrough/status/1149876122139545600?ref_src=twsrc%5Etfw"&gt;July 13, 2019</a&gt;
</blockquote&gt;
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;</script&gt;

これが埋め込みタグだね!


以下,自分が何度もやってる作業だけど,毎回忘れちゃうからメモ.僕のYouTubeチャンネルの Nintendo Playthrough の統計をまとめるときの作業かな?

1) 画像を作る

np {VIDEO URL}

np の中身 https://lookbackmargin.home.blog/2018/10/29/52213760
alias の作り方 https://lookbackmargin.home.blog/2019/07/08/52226019

2) 画像をTwitterにアップ
ツール使っても,ブラウザからやっても.

3) TW URLを取得
まずはTweet URLを取得する.Kotoriotoko というシェルスクリプトツールを使っています.

cd {PATH TO KOTORIOTOKO}/BIN
sh twtl.sh -n {COUNT} {TW NAME}

取得したURLの i/web を,{TW NAME} に置換

https://twitter.com/i/web/status/1149876122139545600
 ↓
https://twitter.com/NPlaythrough/status/1149876122139545600

4) IMG URLを取得
これを使って画像URLを取得.

#何となく $HOME に帰ります
cd

twimgurl {TW URL}

twimgurl は,下のスクリプトを alias 登録したもの

#!/bin/bash
# this shellscript requires a Tweet URL as an argument
# make twimgurl.txt if not exit
touch ~/Downloads/twimgurl.txt

# prefix of image URL
prefix="https://publish.twitter.com/oembed?url="

# make GET param
param=$prefix${1}

# download thumnail image
GET ${param} | sed -e 's:u003C:/g' -e 's:\\::g' -e 's:^.*a href="\(.*\)"&gt;pic\.twitter\.com.*$:\1:' &gt;&gt;~/Downloads/twimgurl.txt

exit 0

twimgurl は連続使用を想定してる.30回連続で実行すると,30行のURLリストがtwimgurl.txtに書き込まれる.

コメントを残す

Powered by WordPress.com. テーマ: Baskerville 2 by Anders Noren

ページ先頭へ ↑

%d人のブロガーが「いいね」をつけました。