ChromeのDNSキャッシュをクリア

表題の通り。知らなかったのでメモ。

■ 環境

  • Google Chrome
  • Mac OSX El Capitan

■ network-internals

/etc/hosts“を書き換えたがDNSのキャッシュが残っているのか、書き換える前のページにアクセスしてしまう。普段使用をしていない別のブラウザでアクセスするなり、しばらく時間をおくなりすれば思い通りのページの内容が取得できるようになるのだが、これはこれで少々面倒である。

chrome://net-internals/#dns

上記にアクセスし、”Clear host cache“のボタンを押すとDNSのキャッシュがクリアされるようだ。

それにしても”capturing events“の多いこと。

以上。

■ 関連

chrome://chrome-urls

Chromeのアクセスをcurlで

表題の通り。Google Chromeにそういう機能があるとは知らなかったのでメモ。

■ 環境

  • Google Chrome
  • Mac OSX El Capitan

■ Copy as cURL

Chromeのデベロッパーツールにある”Network“を開いてページにアクセスし、例えば”www.google.co.jp“を右クリック→”Copy“→”Copy as cURL“といくと下記のように`curl`コマンドで実行するようにいろいろオプションを付けたモノが取得できる。

$ curl 'https://www.google.co.jp/' \
  -H 'accept-encoding: gzip, deflate, br' \
  -H 'accept-language: ja,en-US;q=0.9,en;q=0.8' \
  -H 'upgrade-insecure-requests: 1' \
  -H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36' \
  -H 'accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8' \
  -H 'authority: www.google.co.jp' \
  -H 'cookie: .....' \
  --compressed 

これを実行してみると、、なんか取得できた。”–compressed“が付いているから読めないのかと思いきや、外してみても読めなかった。残念。しかしこれを使えばいろいろできそうである。知っておいて良いだろう。

以上。

Chromeのfaviconキャッシュを削除

Macにおいて表題の通り。

■ 環境

  • Google Chrome
  • Mac OSX El Capitan

■ favicon

古いfaviconがキャッシュされているようで新しいものが確認できない。どうやらMacでは下記にキャッシュファイルがあるようだ。

/Users/withsin/Library/Application Support/Google/Chrome/Default/Favicons

ちなみに”Favicons“はディレクトリではなくファイルである。確認してみると下記であった。

$ file Favicons
Favicons: SQLite 3.x database
$

ということは取得できるのかな?と思ってやってみる。

$ sqlite3 Favicons
SQLite version 3.8.10.2 2015-05-20 18:17:19
Enter ".help" for usage hints.
sqlite> .tables
favicon_bitmaps  favicons         icon_mapping     meta
sqlite> 
sqlite> .schema favicons
CREATE TABLE favicons(id INTEGER PRIMARY KEY,url LONGVARCHAR NOT NULL,icon_type INTEGER DEFAULT 1);
CREATE INDEX favicons_url ON favicons(url);
sqlite> 
sqlite> .schema favicon_bitmaps
CREATE TABLE favicon_bitmaps(id INTEGER PRIMARY KEY,icon_id INTEGER NOT NULL,last_updated INTEGER DEFAULT 0,image_data BLOB,width INTEGER DEFAULT 0,height INTEGER DEFAULT 0,last_requested INTEGER DEFAULT 0);
CREATE INDEX favicon_bitmaps_icon_id ON favicon_bitmaps(icon_id);
sqlite> 
sqlite> .schema icon_mapping
CREATE TABLE icon_mapping(id INTEGER PRIMARY KEY,page_url LONGVARCHAR NOT NULL,icon_id INTEGER);
CREATE INDEX icon_mapping_page_url_idx ON icon_mapping(page_url);
CREATE INDEX icon_mapping_icon_id_idx ON icon_mapping(icon_id);
sqlite> 
sqlite> .schema meta
CREATE TABLE meta(key LONGVARCHAR NOT NULL UNIQUE PRIMARY KEY, value LONGVARCHAR);
sqlite> 

favicons“テーブルにURLが、”favicon_bitmaps“テーブルに実際のfaviconが、それらを紐付けるマッピングテーブルが”icon_mapping“テーブルっていったところだろうか。

とりあえずこのsqliteのDBファイルを丸っと削除すればfaviconのキャッシュは削除されるようだ。

$ rm Favicons

以上。

95パーセンタイル値を取得

ExcelやGoogle SpreadSheetにおいて表題を取得したい。関数で存在するのを知らなかったのでメモ。

■ 環境

  • Microsoft Excel
  • Google SpreadSheet

■ percentile

どちらの表計算ソフトにも”percentile“関数が存在した。さすが表計算ソフトだ。

PERCENTILE
https://support.google.com/docs/answer/3094093?hl=ja

=percentile(B2:B131, 0.95)

上記のように、範囲と割合を指定すれば取得できる。”95パーセンタイル“であれば、得られた数値の範囲に”95%“が入っているということになる。

以上。

Google Spreadsheet 変更通知

表題の通り。メモ。

■ 環境

  • Google Spreadsheet

■ 変更通知

共有しているファイルに変更があった場合に通知してほしい。その設定がないのだろうかと見ていたらあった。

該当のSpreadsheetを開く > ツール > 通知ルール 

自身は下記を選択している。

  • 変更が入ったとき
  • メール – その都度

この設定を入れておいたところ、共有している別ユーザが更新した時に下記のようなメールが届いた。

Subject: "【共有しているファイル名】"が更新されました
Body: 
Google ドキュメント「【共有しているファイル名】」の変更内容を確認: ここをクリック
【変更したユーザ】 が 2017/07/18 03:51~03:51(アメリカ太平洋夏時間)に変更を加えました
Google ドキュメント「【共有しているファイル名】」の最新版を開く: ここをクリック

Powered by Google スプレッドシート

差分もわかるし意外と便利であった。

以上。