IT関連雑記帳

IT関連の話をつらつらと

puppeteerのコードをrequest-promiseからaxiosに置き換えました

自宅のPCにSSDを増設したら、機嫌を損ねたのかHDDの調子が悪くなりましてフォーマットしたのですよ。で、そこには開発環境が入っていたのでnodeやpuppeteerを再設定。動作確認してみたら、こんなエラーが発生。

あまり詳しくないので環境を作り直したりしてみたんだけど一向に直らず。調べていたら、どうやらrequest-promiseが非推奨になったらしい……。どうしたらいいのか更に調べていたら、axiosというものが見つかったので、コードを置き換えました。

await axios({
	method: 'get',
	url: targetFile,
	responseType: 'arraybuffer',
	'content-type': 'audio/mpeg'
})
	.then(function (response){
		fs.writeFileSync(targetFilename, response.data, 'binary');
	});

これだけでした。content-typeの指定が必要かどうかは分かってないですが、たぶん無くても大丈夫な気がする。

ただ、responseTypeをarrayBufferと書いていたらバイナリーデータが上手くダウンロードできなかったです。arraybufferじゃないとダメらしいですね。

とりあえずまた動くなったようになったので良かった。今まで作った他のコードもrequest-promiseのままだから、直した方がいいですかね。使う事は無さそうだけど。

ペライチ技術資料

久しぶりに自社向けに資料を作ってみました。
こんなのです。

取るに足らないレベルなんですが、自社向けというか自分のために、こんな感じのペライチ技術資料を量産していこうかなと思っています。

【自分用メモ】AndroidのChromeで開発者ツールを使用する方法

自分用メモです。

詳しくはリンク先を参照して頂くとして、自分用にはPCのChromeで打ち込む以下のコマンドだけメモっておきます。

chrome://inspect/#devices

参照先はこちら

pisuke-code.com

不具合起票時に心がけて欲しいこと

ものすごい久しぶりにスライドを作りました。

内容はタイトル通りです。不具合票には発生した事象だけを書くのではなく、プラスアルファの情報も書きましょうっていうお話です。

自社のプロジェクトに所属している若手メンバーを想定して作成しています。内容が若干わかりづらいところがあるかもしれませんが、何かのヒントになれば幸いです。

speakerdeck.com

(Puppeteer) Kindle for PCの書籍情報をCSV化するスクリプト

github.com

ものすごく久しぶりの更新です。
Kindleで購入した書籍が786冊になりました。安くなっている時にまとめ買いしたマンガが多く、たぶん半分以上読んでいない気がします。

という話はどうでもいいんですが、Kindle for PCの書籍データがxmlファイルとしてPC内部に保存されているという情報を聞きまして、そこからデータを抜き出すスクリプトを作成しました。

同じような感じでCSVファイルを作成するスクリプトをベースに、1時間ぐらいで作ったのでもしかしたら環境によっては上手く動かないかもしれませんが、良かったら使ってみてください。

例によってGitHubにアップロードしてあります。

xmlファイルが格納されている場所はこの辺りにあると思います。スクリプトの上の方で定義していますので、環境に合わせて修正してから実行してください。

C:\Users\username\AppData\Local\Amazon\Kindle\Cache\KindleSyncMetadataCache.xml

とりあえず本日は以上です。