サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大谷翔平
ryoichi0102.hatenablog.com
Puppeteer入門 という本を執筆しました 先日こっそり触れましたが、Puppeteerの入門書が秀和システムから出版されました。表紙は漫画家の鶴田謙二さん。 表紙目当てで買って頂ける方もいらっしゃるようです。 Node.jsの知識がなくてもWebスクレイピングができるようになれるよう書きました。 www.shuwasystem.co.jp Amazonのリンクはコチラ ざっくり内容 ・Puppeteerを使い始めるまでの色々な環境構築 ・JavaScript や Node.jsの書き方 ・ブラウザ操作の自動化 (要素の特定、要素への入力など) ・実践例いろいろ ・テスト自動化への適用やデバッグ と、だいたいこんな感じの流れになってます。 読んでいただいた方々の声 Amazonのカスタマーレビューより Puppeteerを使いこなしたかったので買ってみましたが、大当たり! これは色んな
Nature Remoとは IRKitをご存知の方はその進化版という説明が早いのですが、これらはスマート家電の一種で、家庭にあるリモコンなどの赤外線を記録することができ、そしてネットワークに繋げることができるというシロモノです。 Nature Remoの特長ですが、 ・赤外線リモコンの信号を学習させることができる ・赤外線の指向性を気にしなくて良い (IRKitから進化した点) ・Wi-Fiに繋がる (アプリやAPIなど外部から制御可能) ・IFTTTが対応している (myThingsは未対応の模様) ・APIが公開されている ←new! などが挙げられます。 リモート操作できる 赤外線の設定を行うと、スマフォから操作できます。 ボタンの1つ1つを覚えさせることもできます。 エアコン各社は初期状態で豊富に対応しているので、記憶させようとするとリモコンの機種名のようなものがサジェストされ、セ
経緯 APIから電話が発着信ができる時代です。前々からなんとなく知ってはいたのですが、デブサミにブース出展されていたこともあり、ちょっと書いてみました。 一般の携帯電話契約にありがちな事務手数料・プランの2年縛りなどがなく、 1つの050番号が月々108円で、番号を取得していない間はこの料金はかからず、 携帯電話宛なら1分16.2円という所が今回ちょっと試してみようかと思った経緯です。 twilio.kddi-web.com 登録 パスワードは14文字〜です。 用途などまだ決まってない方にも、I'm just exploring / I don't have a project in my mind yet / Not a production App あたりの選択肢があるので大丈夫です。 ここで自分の電話番号を認証させます。 ※ ここで入力する番号から発信したりするのではなく、単に本人確
EC2でWordPressだと高い WordPressを安価に、と考えると今まではさくらVPSで685[円/月]あたりがおそらく思いつきそうな所でしたが、2016/12/01にAmazon Lightsailが月5$〜という価格でリリースされました。 さっそくLightsailのインスタンスを作成 AWSコンソールからlightsailと検索してもよいですし、 https://lightsail.aws.amazon.com/ にアクセスしても良いです。 Let's get startdをクリックでインスタンス作成画面へ。 (2回目以降のアクセスは下記のような表示になります) Create an instance! をクリックです。 オプションの選択 Pick your instance imageでWordPressを選択します。 記載時点のバージョンは4.6.1になっていますが、インス
Adminerとは Webブラウザから使用するPHP製データベースクライアントです。 サブタイトルにDatabase management in a single PHP fileと記載のある通りphpファイルを置くだけです。 phpMyAdminに似ていますが、MySQL以外にも対応しています。 発音はアドマイナーです。 公式サイト https://www.adminer.org/ GitHub vrana/adminer: Database management in a single PHP file phpMyAdminよりイイ インストールは公式サイトからダウンロードして、FTPでPHPファイル置くだけですから手軽です。使いにくいレンタルサーバーの管理画面からphpMyAdminを入れてetc...とやらなくて良いのです。 たとえばCakeであればFTPで./app/webroo
npmとは Node.jsのパッケージ管理システムであり、Node Package Managerの略です。 また、それらモジュール郡をホスティングしているサイトもnpmです(npmjs.com) Mavenで言えばセントラルリポジトリ的な役割でしょう。 作成したモジュールをnpmで公開するにはnpmjs.comにサインアップする必要があります。 www.npmjs.com npmjs.comへのアカウント登録 こちらがサインアップ画面です。 Public Emailという入力欄があり、登録ボタンの直前には "Your email address will show on your profile page, but npm will never share or sell it." とあります。 表示はするけど、引き渡したり売ったりはしないよ、ということですね。 登録後のプロフィール画面
以前にも似た記事を書きましたが、最近はOracleのDockerfileもちゃんとしてきた(?)と聞いており機会があったので使ってみました。 以前の記事とOracleの公式docker-images Docker上にOracle 11g XEを立てた - メンチカツには醤油でしょ!! Docker上のOracleで初期化処理したい - メンチカツには醤油でしょ!! github.com 手順 公式のoracle-docker-imagesをcloneします。 > git clone git@github.com:oracle/docker-images.git oracle-docker-images > cd oracle-docker-images/OracleDatabase/SingleInstance/dockerfiles/ シェルしか入っていないのでgit bashで実行しま
sshは通るけどcloneはできない あると思います。そんな時のためのメモです。 Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. これですよね。 ssh-keygenでid_rsa以外を指定 ssh-keygenした時にkeyのファイル名を変更していると上記のエラーが出ると思います。(たとえばgithub_id_rsa, github_id_rsa.pub のように) GitHubのSettings⇒SSHで公開鍵登録しても、 sshは通るけど、cloneはできないという状態になると思います。謎。 この場合は、ssh-addをする
経緯 釣りなタイトルでスミマセンm(_ _)m 前回、npmアカウントのプロフィールに指定するメールアドレスが全世界公開設定であり、その公開範囲が変更できないことを取り上げました。 その際、GitHubではnoreplyを設定することを推奨している。 と書かれており「あれ?これはもしや…」と思って試したらこれがビンゴで 他人のメールアドレスが引っこ抜けることが判りました。 たまに「あなたのGitHubでの活躍を拝見したのでスカウトします」的なspamがあり、このアドレスの入手方法が気になっていましたが、おそらく次に示す方法なのかなと思います。(※もちろん、必ずしもスカウトがspamとは限りません) GitHubで使用しているメールアドレスも第三者に知れ渡っている? ひょっとして"GitHubに登録しているメールアドレスが第三者に知れ渡ってるのではなかろうか"と思い、設定やヘルプを見直したと
S3のホスティングをhttps化する (2017/08 現在) 静的なウェブサイトなどをホスティングする際にはS3が超便利で今はこれ以外の選択肢が考えられないほどですが、このS3でホスティングしているサイトをAmazon CloudFrontとACM(AWS Certificate Manager)を使ってhttps化します。 http://www.your-domain.com.s3-website-ap-northeast-1.amazonaws.com/ ↓ (こんな感じ) ↓ https://www.your-domain.com/ 前提 ・S3でサイトはアップロード済 ・独自メイン取得済 (お名前.comとかでも良い、Route53は必須ではない) ・Amazon SESなどを利用して独自ドメインのメール送受信はできる状態 ちなみに、ドメインの取得は後からにして、とりあえずClo
前置き 前回はIFTTTで初めてのRecipe作成について紹介しました。 work withから選択すると予め公開されているRecipeしか使えないので 今回は新規作成と設定についてです。 そして、APIの入り口を作って、そこが叩かれたらiPhone(スマフォ)へ通知 というところまで紹介します。 ryoichi0102.hatenablog.com 手順です メイン画面をスワイプしてMy Recipes一覧を表示させ 右上の+ボタンをタップします。(ここまでは前回と一緒) 今回はBrowseの最下部にある Create a Recipeをタップします。 (最初、これがなかなか発見できませんでした笑) Create a Recipeが表示され、thisとthatの部分に+が表示されます。 まずはthis=何をトリガーとするか、の設定ですので Start here!の所の+をタップします。
まとめました JJUG CCC 2017 Springの発表資料(スライド)を纏めました。 現在非公開になっているものは見つけ次第、追記していこうと思います。 また、漏れてたり間違ってたり追加があったり後に非公開になったりした場合は @ryoichi_obara までお知らせ頂ければと思います。 スライドが無くて、Togetterがあるものはそちらにリンク貼っていたりします。 A0 日本Javaユーザーグループ 年次総会 日本Javaグループ2017年定期総会 #jjug from 日本Javaユーザーグループ www.slideshare.net ABCD1 JJUG CCC 20th fireside chat 未公開 E1 ふつうのJavaコーディング F1 Hipsterで学ぶ!Springによるサーバサイド開発手法 GH1 非機能要件とSpring Boot ABCD2 Java
DropboxのHTTPサーバー機能がサポートされなくなる 以前はPublicフォルダーにファイルなりディレクトリなりを置いた後に 同期されたファイルを右クリック⇒公開リンクのコピーで ブラウザから表示すると、htmlファイルをWebサイトのように見れていました。 がしかしBasicユーザーは2016/10/03から、Pro/Businessユーザーは2017/09/01から 仕様変更が行われ、これらはダウンロードになるような挙動となります。 ↓ 公式の説明 www.dropbox.com 代替サービスを探す ということで、代替となりそうなサービスをいくつか試しました。 (結論先に言っておくとAWS CLIでS3 syncしてます) ユースケースとしては、 Mac/Windowsに同期クライアントアプリをインストールして OS上で編集するとそのまま同期されて、 ブラウザF5でそれが更新され
仕様??? Dockerfileに書いてあるADD/COPYコマンド(及び他のコマンド)がdocker-compose.ymlで指定された場合に作動しないのです。 RUNのみ有効、というのが余計にややこしい。 ファイルをコンテナ内にコピーしたい場合、docker-compose.ymlのvolumesを使わないとできない場合があります。 (volumes使えばできるので判ってれば問題にはならなそうですが) github.com (追記) バージョンが違うと挙動が違う できなかった (Docker for Windows) > docker -v Docker version 17.03.1-ce, build c6d412e > docker-compose -v docker-compose version 1.11.2, build f963d76f できなかった (Docker fo
MySQLにお寿司を突っ込むとエラー まぁお寿司に限らずなんですが 🍣 のようなユニコード文字をそのままデータベースに入れようとするとエラーになることがあります。 SQL Error: 1366, SQLState: HY000 Incorrect string value: '' for column '' at row 1 エラーメッセージとしてはこんな感じなんです。 絵文字に限った話ではない 4バイトUTF8では起こりうる話です。 なにげに 𩸽 (ほっけ) とかも4バイトUTF8です。 MySQLではutf8とutf8mb4とで違う MySQLには4バイトUTF8を格納するためのutf8mb4があり、データベース・テーブル・カラムなどにそれぞれ設定できます。 また、接続文字列にも指定できます jdbc:mysql://localhost:3306/myMySQLDataSourc
まぁみなさんご存知かもとは思いますが、まとめます。 楽して登録したい Googleカレンダーにリマインダーのごとく細かく登録している方、結構いると思います。 たとえば、 10:00 家出る 22:53 終電 やまびこ60号 とかですね。 登録が多くなってくると、なるべく楽したいのが人の心理ってものですね。 このように登録すると時間の入力が省ける 日付のセル(?)をクリックして予定を入力する所で 10:00 家出る 10:00-10:00 家出る などと入力すると10:00の部分に"家出る"がちゃんと登録されます。 既定の長さがたとえば30分に設定されていれば「10:00 家出る」で 10:00-10:30 の枠で登録されます。 (家出るだけだと30分もかからないと思いますが^^) 既定の長さを設定しておきましょう 上記で、"開始時刻と終了時刻を指定してください"というエラーが出る方は 左側
概要 ・Oracle公式のDockerfileを使ってみようとする ⇒ 挫折 ⇒ 後日、できるようになりました。 (リンク) ・Cent OSをDockerに構築してその上にOracleを入れてみようとする⇒挫折 ・結局、公開されているDockerイメージを利用した^^; Oracle公式Dockerfile Oracle公式のDockerfileはGitHubに公開されているので、それをpullします。 Database 11g XEだけでなくイロイロあります。 github.com docker buildしてみた > docker build -t oracle/database:11.2.0.2-xe . Sending build context to Docker daemon 315.9 MB Step 1 : FROM oraclelinux:latest latest:
ドメイン取った際にメールサーバー立てるのしんどいです。 AWSアカウントがあったので メールサーバーレスと言っていいのかはさておき、サーバー構成をすることなく独自ドメインのメール送受信をやってみました。 ゴール ドメイン宛に来たメールが任意のメールアドレスに転送できること。 ドメインから任意のアドレスにメーラーやEC2内からメール送信できること。 具体例として、 hostmaster@mydomain.comへの受信メールがmy@gmail.comに転送されること。 no-reply@mydomain.comからany@mail.addressへのメール送信できること。 の2点ができるように手順を紹介します。 必要なもの ・受信のための転送先メールアドレス SESでSandboxテストをするためのメールアドレスと兼用 (今回はGmail) ・独自ドメイン (Route 53でなくお名前.c
なりゆき Ubuntuを入れたマシンにcronで定時実行したい処理があったので それを設定した時のメモです。 cronサービスが生きてるか確認 $ sudo service cron status 実行シェルを配置 $ cd /etc/cron.d/ $ sudo cp ~/temp/***.sh ./ $ chmod 644 ***.sh sudoでやらんとコピーできなかったり権限設定できなかったり。 所有者はrootになってる必要がありそうです。 crontabを設定 $ crontab -e no crontab for obara - using an empty one Select an editor. To change later, run 'select-editor'. 1. /bin/ed 2. /bin/nano <---- easiest 3. /usr/bin/
タイトル長い(笑 IFTTTのDO BUTTONとは 以前IFTTTというWebサービスを紹介しました。 このWebサービスは、「ある条件を設定」しておき、その条件が満たされたときに「予め設定しておいた動作をする」というようなサービスです。 If This Then Thatの略でIFTTT、いふと、と読むようです。 Gmail, Dropbox, Slack, スマホ位置情報・通知, IoT家電など300以上のサービスとの連携が用意されている点が強みです。 DO BUTTONとは、このIFTTTの"IF"な部分(サービス内ではトリガーと呼ぶ)を削ったシンプルなボタンのようなサービスです。 BUTTONは単純すぎて使い道はあるのか? 最初はそう思うことでしょう。 でも、ちょっとした動作やリマインダーをセットしたり IFTTTと違って人間の判断でトリガーを引いて連携動作をしたいってことが 結
Apache Maven の発音というか、読み方について (※ 忙しい方へ結論を先に:メイヴェンと発音してアクセントはイです、これ大事。書くときはカタカナ表記はダメでMavenと書いて下さい。) メイヴン、メイヴェン、メイビン、メイバンなど、色々な読み方を聞くことがありますが、このエントリーでハッキリとさせようじゃありませんか! さて、そもそもMavenとは Apache Maven(アパッチ メイヴン/メイヴェン)は Java用プロジェクト管理ツールである。 Apache Antに代わるものとして作られた。 Apacheライセンスにて配布されているオープンソースソフトウェアである。 (Wikipedia https://ja.wikipedia.org/wiki/Apache_Maven) おっと、いきなり答えらしきものが! でもWikipediaですからね。もう少し検証が必要ですよね。
相変わらず、Google Apps Scripts (GAS) の話題です。 Google Spreadsheets は便利ですが、 Excel で出来たことが標準関数として用意されていないことが たまにありますね。 エンジニアとして ないものは、作るしかないですね。 ■ やること 今回は、ExcelでいうPHONETIC関数です。 といっても、Spreadsheets にはフリガナという概念を持っていないので 漢字の読みをカタカナで~ということは難しそうです。 …さて、 全角ひらがな⇒全角カタカナ 全角英数 ⇒半角英数 が変換できればいいかなーといったゴールにします。 ■ functionを定義する 幸い?シートからユーザー定義関数が呼び出せるとところはExcelと同じなので、 渡されたセル内の文字をコード変換してあげればいいかなーって感じですね。 ツール⇒スクリプトエディタで下記のf
まぁ掲題の通り、且つ、そんな事も知らなかったのかよ的なネタです。 WindowsでDiffツールといえばWinMergeを使用しているのですが 「再帰的にフォルダー配下のファイルまで一気に検索する方法ないよなー」 と思っていたのですが、ありました。 まずは勘違いオペレーションから。 コンテキストメニューが便利なので、2つ選択して右クリックで こんな感じでフォルダー配下の差分が得られるので ずっとこのやり方でやっていたのですが、 サブフォルダー配下の差分については、そのサブフォルダー配下まで移動しないと 見れないんですよね。 1つ1つ見ていかなければいけないので、これは不便! なにかイイ方法ないかな~と思っていたのですが 標準機能で搭載されていました(笑 普通にWinMergeを開いて、「開く」メニューになんと サブフォルダを含む オプションがあるじゃないですか! こんな感じで表示されて便利
そろそろやらないと取り残されちゃうのと、情報が充実してきたのでJenkins。 Macも持ってるからそっちでやれって感じなんだけど、 オトナの事情によりWindows 8.1 (・・; Welcome to Jenkins CI! | Jenkins CI http://jenkins-ci.org Windowsなので、native packageからWindowsのインストーラーをDLします。 インストールしてジョブ設定したんだけど、実行するとエラー。 SVNから取得する親プロジェクトはうまくいってる。 (だってsvn updateしてるだけなのでw) ビルドします。 ワークスペース: C:\Jenkins\workspace\【ジョブ名】 [【ジョブ名】] $ sh -xe C:\Windows\TEMP\hudson9164964019113453717.sh 指定されたファイルが
このページを最初にブックマークしてみませんか?
『メンチカツには醤油でしょ!!』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く