YouTube Musicで「高く評価」した曲の情報を自動でエクスポートする方法

YouTube Musicで「高く評価」した曲は、それと同じアカウントでYouTubeを開いた際に、〈YouTubeにおける「高く評価」した動画〉の一覧の中に含まれています。

したがって、後者(YouTubeにおける「高く評価」した動画の情報)をエクスポートすれば、その中に含まれた形でエクスポートされることになります。

IFTTTを使うと、それが実現します。下記の記事で説明しています。

Googleスプレッドシートにエクスポートする

ich.hatenadiary.com

Evernoteの特定のノートにエクスポートする

YouTubeで「高く評価」した動画の情報をEvernoteの1個のノートに保存する - 小技チョコレート

翌日の天気予報が雨のとき、前日のうちにAndroid端末 / iOS端末で通知を受け取る方法

翌日の天気予報が雨のとき、前日のうちに、Android端末 / iOS端末でその通知を受け取る方法を紹介します。


〈目次〉


機能

  • 通知の配信は1日に1回のみです。
    • 〈降雨〉を含む天気予報が発表されてから30分後くらいまでには、通知が届くと思われます。
    • 「晴れのち雨」や「雨時々曇り」のように、天候の一部に〈降雨〉を含むだけの場合も、通知の対象になります。
  • 通知で受け取れる情報はこちらの4つです。
    • 【明日は雨が降ります】というメッセージ
    • 翌日の日付
    • 雨の種類:Rain(継続的な雨)、Showers(にわか雨)、Light Rain(小雨)など。
    • 通知をタップすると、翌日の天気予報が載っているウェブページ(Weather Undergroundのサイト内)がブラウザで開きます()。
  • 雨予報の対象として指定できる地点は1つのみです。
    • 市町村単位、または都道府県単位で指定することができます。
  • 天気予報の提供元は、Weather Undergroundという海外のサイトです。
  • 利用は無料で、広告もありません。
  • 2台以上のAndroid端末 / iOS端末で通知を受け取りたい場合は、1台の端末で下記の設定を終えた後であれば、2台目以降の端末では、後述のIFTTTのアプリをインストールしてIFTTTにログインするだけで、設定どおりに通知を受け取ることができます。

通知のサンプル

f:id:ichbin:20181012153359p:plain:w500
上から2個目のもの。Android5.1の場合です。

必要なもの

  • IFTTTというサービスを使うので、IFTTTのアカウントが必要です(無料。アカウント登録には、メールアドレス / Facebooアカウント / Googleアカウントのどれか1つが必要)。
  • 通知を受け取る端末に、IFTTTのAndroidアプリまたはiOSアプリをインストールしておく必要があります。

設定の手順

設定の作業をAndroid端末 / iOS端末でおこなう場合が多いでしょうから、ここからは、IFTTTのAndroidアプリ / iOSアプリを使って設定をする場合の手順を示します。これと同じことをウェブブラウザ(PC)から実行することもできます。

本記事はAndroidアプリを使った場合のスクリーンショットや操作方法を掲載していますが、iOSアプリでもおそらく同じ手順で実行できると思います。

IFTTTのアプリのインストール

IFTTTのアプリを、Google PlayストアまたはiTunesストアからインストールします。

IFTTTへのログイン / アカウント登録

IFTTTのアプリを起動します。
起動した最初の画面はこのようになっています。右へスクロールしていくと、ログインやアカウント登録をする画面になります。
f:id:ichbin:20181012132526p:plain:w500

f:id:ichbin:20181012132543p:plain:w500
GoogleまたはFacebookのアカウントでログイン / アカウント登録をする場合はそれぞれのボタンをタップ。
メールアドレスでログインする場合は右下のsign inを、メールアドレスでアカウント登録をする場合はsign upタップ。

アプレット適用する

IFTTTのアプリを起動し、右上にある虫眼鏡のアイコンをタップ。 f:id:ichbin:20181012161547p:plain:h500

画面が変わり、上部に検索フォームが表示されます。
この検索フォームに、半角のローマ字でkiftjpと入力してEnterキーを押します。
すると、検索結果としてこの画像のように青色の四角が表示されるはずです(もし検索結果が正しく出なければ、https://ifttt.com/applets/NnkQqpjJ-android-iosをIFTTTのアプリで開いてください)。
f:id:ichbin:20181012132829p:plain:w500

この青い四角をタップします。すると、次の画面に変わります。

この画面になります。これを下にスクロールしていきます。
f:id:ichbin:20181012132848p:plain:w500

画面の一番下に、白字で“Turn on”と書いてあるところがあります。
f:id:ichbin:20181012132906p:plain:w500

この白い字をタップします。すると、字の左にあった丸が右に動き、“On”という表示に変わります。

f:id:ichbin:20181012133020p:plain:w500

次に、この画面が表示されます。
f:id:ichbin:20181012133034p:plain:h500

これを下にスクロールしていきます。

“Receive notifications when this Applet runs”と書いてあるところの右側にスライド式のスイッチがあります。このスイッチはオフにしておきます(この画像はオフの状態。スイッチが右端にあるとオンです)。
f:id:ichbin:20181012160540p:plain:w500

“Weather Underground”の欄にて、雨予報の対象とする地点を指定します。
f:id:ichbin:20181012160618p:plain:w500

”Set to your current location”をタップすると、GPSなどの位置情報をもとに、その端末がある地点の地名・市町村名が入力されます。

位置情報による指定がうまくいかない場合や、現在地以外の場所を指定したいときは、次のようにして手動で地点を指定します。

上の画像で“Search for your location”と書いてある入力欄に、雨予報の対象として指定したい地名を、半角のローマ字で入力します。ある程度の人口がある都市名や市町村名を入力するとよいでしょう。
f:id:ichbin:20181012133137p:plain:w500

ここでは、例として名古屋市を指定するつもりでnagoyaと入力しています。
地名を入力すると、黒いポップアップの中に候補が出てきます。1行目の“Nagoya, 愛知県 日本”が名古屋市を意味しています。3行目のものも名古屋市内です。
この黒いポップアップは下にスクロールできるので、画面上では隠れている候補にもすべて目を通したほうがよいと思います。

候補のなかから1つをタップすると、このように入力されます。
f:id:ichbin:20181012133211p:plain:w500

画面の一番下にある“Save”のボタンをタップ。すると、次の画面に変わります。

このように“Your Applet is turned on!”というメッセージが表示された画面になれば、設定は完了です。IFTTTのアプリは閉じてもかまいません。
f:id:ichbin:20181012133228p:plain:w500

以降は、翌日の天気予報に〈降雨〉が含まれているときには、その前日に通知が届きます。

配信された通知の履歴を見る方法

IFTTTのアプリを起動すると、画面の一番下に3つのアイコンが並んでいます。その中の中央のもの(Activity)をタップし、画面が変わったら、画面上部の鈴の形のアイコンをタップ。そこに通知の履歴が表示されています。

f:id:ichbin:20181012133249p:plain:h500
履歴の画面では、通知の内容は英語で表示されるようです。

地点を確認 / 変更する方法

IFTTTのアプリを起動し、画面の一番下に並んでいる3つのアイコンのうちの右端のもの(My Applets)をタップします。

画面が変わったら、画面上部の“Services”をタップ。そして下の方にスクロールしていくと、こちらの画像のように“Weather Underground”のロゴがあるはずです。
f:id:ichbin:20181012133411p:plain:w500
中央下部に“Weather Underground”。これをタップします。すると、次の画面に変わります。

このような画面が表示されるので、右上の歯車の形のアイコンをタップ。
f:id:ichbin:20181012133620p:plain:w500

すると、次の画面に変わります。雨予報の対象として指定されている地点をここで確認できます。
f:id:ichbin:20181012133632p:plain:w500

地点を変更する場合は、左下にある“Edit”のボタンをタップします。すると、次の画面に変わります。

f:id:ichbin:20181012133645p:plain:w500
以降の手順は、上述の手順と同じです。

新しい地点が入力されたら、“Save”のボタンを押して完了です。
f:id:ichbin:20181012133716p:plain:w500

通知の配信を停止 / 再開する方法

IFTTTのアプリを起動し、画面の一番下に並んでいる3つのアイコンのうちの右端のもの(My Applets)をタップします。

画面が変わったら、この画像のように、雨予報の設定が青い四角形で表示されているので、この四角形をタップします。
f:id:ichbin:20181012133801p:plain:w500

すると、この画面に変わります。これを下にスクロールしていきます。
f:id:ichbin:20181012133816p:plain:w500

黒字で”On”と書いてあるところをタップします。
f:id:ichbin:20181012133831p:plain:w500

すると、その右側にある緑色の丸が左に動き、画面全体が灰色に変わります。

f:id:ichbin:20181012133848p:plain:w500

これで、通知の配信は止まります。

通知の配信を再開したいときは、この画像で白字で“Off”と書いてあるところをタップします。すると表示が”On”に変わり、配信が再開します。

関連記事

翌日の雨予報をメールで受け取る方法もあります。

Pushbulletというアプリケーションで通知を受け取る方法もあります。

ブラウザの拡張機能“Stylus”の使用例

Chrome拡張機能や、Firefoxのアドオンとしてインストールできる“Stylus”を使って、ウェブサイトの見た目を変えることができます。この記事では、そのサンプルを紹介します。


〈目次〉


Twitter

別の記事で2件解説しています。

Evernote Web

Evernote Webで外部リンクにマウスカーソルを合わせたときのポップアップを非表示にする

div#gwt-debug-FloatingLinkBar-root{display:none !important}

Evernote Webのノート一覧での各タイトルの色を変える

Evernote Webの左端に表示されるノート一覧の中で、各ノートのタイトルの色を変えます。

div.focus-NotesView-Note-noteTitle{color:#bbb !important}  /*色を #bbb にする場合*/

Wikipediaのダークテーマ

まだ不完全なところがありますが、おおむね使えるかなと思います(※最終更新:2018/10/22)。 f:id:ichbin:20181022165736p:plain:w500

li.selected, li.new, li.collapsible,li#ca-nstab-user,li#ca-talk{background-image:none !important;background-color:#333 !important;border:none !important}
.VectorTabs ul{background-image:none !important;border:none !important}
body, div#content, div#mw-page-base,div#toc,table.infobox,h1,h2,h3,h4,h5,h6,h7{background:#333;color:#ddd}
a:link{color:#3E93C3 !important}
a:visited{color:#9760C3 !important}
a.new{color:#ba0000 !important}
table.ambox, .referencetooltip li,div.catlinks,table.nowraplinks tbody,div.navbox,div.thumbinner,table.tmbox,tabletmbox-content,table.plainlinks,table.wpb-outside{background-color:#333}
.referencetooltip li{border:solid 1px #ddd}

Evernoteのブラウザ版で外部リンクを開くときの「Evernoteの外に移動します」ページをスキップする方法

Evernoteのブラウザ版(Evernote Web)で外部リンクを開こうとすると、このような転送ページが表示されます。 f:id:ichbin:20180923164322p:plain

この転送ページをスキップして、外部リンクを自動で開くようにする方法を紹介します。

必要なもの

ブラウザの拡張機能“Tampermonkey”(Chrome拡張機能Firefoxアドオン)を使います。Chrome拡張機能Firefoxアドオンのどちらかが利用できるブラウザが必要です。

設定の手順

ブラウザに、上述のTampermonkeyをインストールします(※以降はChromeの場合で説明しますが、Firefoxアドオンを使っている場合も、操作は同じだと思われます)。

ブラウザのツールバーに表示されたTampermonkeyのアイコンをクリックして開くウィンドウの中の「ダッシュボード」をクリック。
f:id:ichbin:20180923163806p:plain

このような画面が開きますので、右上のほうにある「+」のアイコンをクリック。 f:id:ichbin:20180923163845p:plain

この画面が開きます。 f:id:ichbin:20180923163900p:plain

その画面で、中央の入力欄に表示されている文字を全て消したうえで、下記のスクリプト(出典はこちら)を、その入力欄にコピー&ペーストします。

// ==UserScript==
// @name         Evernote Outbound Clicker
// @namespace   http://harristribe.co.uk/
// @version      1.0
// @description  Avoids the evernote outbound page 
// @author       Rob Harris
// @include     https://www.evernote.com/OutboundRedirect.action*
// @grant        none
// @run-at       document-start
// ==/UserScript==

(function() {
    'use strict';

    var urlParams = new URLSearchParams(window.location.search);
    window.location.href = urlParams.get('dest');
})();

ペーストしたら、左上にある「ファイル」メニューを開き、「保存」をクリック。 f:id:ichbin:20180923163933p:plain

すると、この画面になります。Tampermonkeyの画面は閉じてもかまいません。 f:id:ichbin:20180923163944p:plain

以降は、Evernoteのブラウザ版で外部リンクをクリックすると、「Evernoteの外部へ移動します」という転送ページからリンク先へと自動で遷移するようになります。

WorkFlowy / Dynalistの内容を、階層構造を保ったままScrapboxにインポートする方法

ScrapboxのUserScriptを使う方法と、そうでない方法との2つがあります。前者のほうが圧倒的に簡単でラクです。
後者をあえて使うメリットは、DynalistでMarkdownを使って指定してある書式やハイパーリンクScrapboxに引き継げることです。


〈目次〉


UserScriptを使う方法

UserScriptを使わない方法

機能

  • インポートによって作成されるScrapboxの各ページのタイトルは、手動で指定する必要があります。
  • インポート元がWorkFlowyの場合は、最上位の階層は箇条書きにならず、2階層め以下が箇条書きになります(こちらの画像の例では「小説」が最上位の階層)。
    • 元のWorkFlowyと完全に同じにするためには、インポート後に手動で修正が必要です(後述)。
  • インポート元がDynalistの場合は、見出し(H1〜H3)や、Markdownで指定した書式・ハイパーリンクなども正しく変換されます。
  • Dynalistにおける「ドキュメント」のタイトルは引き継がれません。
  • Dynalistの内容が画像を含む場合は、エラーが出るかもしれません。

必要なもの

Scrapboxにインポートする手順

WorkFlowyからインポートする場合は下記をご覧ください。Dynalistからインポートする場合はこちらをご覧ください。

WorkFlowyからのインポート

WorkFlowyにて、Scrapboxにインポートしたい部分を開き、画面右上の歯車アイコンもしくは一行目の右端にある「…」の形のアイコンをクリックし、“Export All”もしくは“Export”をクリック。 f:id:ichbin:20180831104611p:plain

“Export”というタイトルのウィンドウが開きます。下の方にある選択欄で“Formatted”を選択し、一番下の“click to download”をクリック。 f:id:ichbin:20180830190225p:plain

“workflowy-export.html”という名前のhtmlファイルがダウンロードされます。このhtmlファイルのファイル名(拡張子を除いた部分)が、Scrapboxへのインポート後にページのタイトルとなります。ファイル名を変える必要があれば変えます。ただし、

  • インポート先のScrapboxに既に存在しているページのタイトルと重複しない名前をつける。

という条件を満たすようにファイル名を付けます。もし重複していると、Scrapboxに既に存在しているほうのページの内容が上書きされてしまうためです。

ここでは、例としてファイル名を“インポート1.html”としてみます。

次に、“インポート1.html”をテキストエディタで開きます。ファイル内の5行目あたりに<style>という文字があり、
f:id:ichbin:20180830190255p:plain

70行目あたりに</style>という文字があるはずです。この<style></style>で囲まれた部分(行数にして70行弱)を、テキストエディタで全て削除します。 f:id:ichbin:20180830190324p:plain

削除しおわると、6行目付近まではこのようになっているはずです。 f:id:ichbin:20180830190350p:plain

削除し終わったら“インポート1.html”を上書き保存。

次に、“インポート1.html”が置いてあるフォルダにて、端末(コマンドプロンプト, Terminal)で次のように実行します(末尾のjsonファイルのファイル名は自由に決めることができます。jsonファイルの名前を変えても、インポート後のページタイトルには影響しません)。

scrapbox-converter インポート1.html > インポート1.json

“インポート1.html”が保存されているのと同じフォルダに“インポート1.json”というファイルができます。

次に、インポート先となるScrapboxのプロジェクトの“Settings”の中の“Page Data”のタブを開きます。 f:id:ichbin:20180830190456p:plain

“Import Pages”のところで「参照」ボタンを押すとファイル選択のウィンドウが開くので、上述の手順で作られた“インポート1.json”を選択。Scrapboxの画面が下記のように変わったら、“Import Pages”をクリック。 f:id:ichbin:20180830190600p:plain

Scrapboxのトップページに自動で遷移します。「インポート1」というタイトルのページが作成されています。 f:id:ichbin:20180830190616p:plain

インポート後の修正(任意)

インポートされたページを開くと、WorkFlowyでの階層構造が再現されています。
f:id:ichbin:20180830190632p:plain

ただし先述のように、元のWorkFlowyで最上位の階層にあった内容(「小説」)はScrapboxで箇条書きになっていませんので、必要があれば箇条書きとし*3、2階層目以下をさらに1階層下げれば*4、元のWorkFlowyと同じ階層構造になります。また、デフォルトでは元のWorkFlowyでの1行目と2行目の間に空行が1行入るようですので、これも消したほうが万全でしょう。

それらの修正を加えるとこのようになります。 f:id:ichbin:20180831103838p:plain

Dynalistからのインポート

Dynalistにて、Scrapboxにインポートしたい部分を開きます。一行目にマウスカーソルを合わせると、行頭に「≡」の形のアイコンが現れるので、それをクリック。小さなウィンドウが表示されるので、その中の“Export”をクリック。 f:id:ichbin:20180830205112p:plain

“Export”というタイトルのウィンドウ開きます。上の方にある3つのタブのうちの“Formatted”を選択し、一番下にある“Download HTML file”をクリック。 f:id:ichbin:20180830205052p:plain

“dynalist-yyyy-mm-dd.html”という名前のhtmlファイルがダウンロードされます。このhtmlファイルのファイル名(拡張子を除いた部分)が、Scrapboxへのインポート後にページのタイトルとなります。ファイル名を変える必要があれば変えます。ただし、

  • インポート先のScrapboxに既に存在しているページのタイトルと重複しない名前をつける。

という条件を満たすようにファイル名を付けます。もし重複していると、Scrapboxに既に存在しているほうのページの内容が上書きされてしまうためです。

ここでは、例としてファイル名を“インポート2.html”としてみます。

次に、“インポート2.html”が置いてあるフォルダにて、端末(コマンドプロンプト, Terminal)で次のように実行します(末尾のjsonファイルのファイル名は自由に決めることができます。jsonファイルの名前を変えても、インポート後のページタイトルには影響しません)。

scrapbox-converter インポート2.html > インポート2.json

“インポート2.html”が保存されているのと同じフォルダに“インポート2.json”というファイルができます。

次に、インポート先となるScrapboxのプロジェクトの“Settings”の中の“Page Data”のタブを開きます。 f:id:ichbin:20180830190456p:plain

“Import Pages”のところで「参照」ボタンを押すとファイル選択のウィンドウが開くので、上述の手順で作られた“インポート2.json”を選択。Scrapboxの画面が下記のように変わったら、“Import Pages”をクリック。 f:id:ichbin:20180830205228p:plain

Scrapboxのトップページに自動で遷移します。「インポート2」というタイトルのページが作成されています。*5 f:id:ichbin:20180830205239p:plain

Dynalistでの階層構造が維持されています。 f:id:ichbin:20180830205255p:plain

*1:筆者はnpmをManjaro Linuxにインストールして使用しています。Linuxであれば、それぞれのパッケージマネージャからインストールできると思います。

*2:Linuxなら sudo npm install -g scrapbox-converter とする必要があるかもしれません。

*3:箇条書きにするには、行頭に半角スペースを入れるか、行頭でTabキーを押す。

*4:2階層目以下を1階層下げるには、カーソルで範囲を選択をしたうえでTabキーを押す。

*5:インポートによって作成されたScrapboxのページ内に、もしも余分な記号類が見えていれば、こちらの要領でhtmlファイル内の<style>から</style>までの部分を削除してからインポートする必要があるかもしれません。