mamimpの研究帳

個人的にまとめたいものを記事にしています。

Windows10のショートカット Cortanaや仮想デスクトップ操作

マルチタッチ対応のタッチパッド

三本指でタップ ⇒ Cortana起動
四本指でタップ ⇒ アクションセンター起動

三本指で横スライド ⇒ アプリ切り替え
四本指で横スライド ⇒ 仮想デスクトップ切り替え

三本指で上スライド ⇒ タスクビュー起動
三本指で下スライド ⇒ ウィンドウを閉じてデスクトップ表示(Win+Dと同じ。復帰は上スライド)

Ctrl+Win+D ⇒ 仮想デスクトップ作成
Ctrl+Win+F4 ⇒ 仮想デスクトップ削除
Ctrl+Win+→、Ctrl+Win+← ⇒仮想デスクトップ切り替え

Amazon MWS サンプルコードの実行方法

目的
 Amazon Marketplace Web Service(Amazon MWS)の公式サンプルコードを実行する。
 MWSはマーケットプレイス出品者のためのAPIで、AWSよりもできることが多いらしい。
 MWSの情報が少なすぎてサンプルコードを動かすのもままならなかったので記事にまとめます。 

前提

  出品者ID(MERCHANT_ID)
  マーケットプレイスID(MARKETPLACE_ID)
  AWSアクセスキーID(AWS_ACCESS_KEY_ID)
  秘密キー(AWS_SECRET_ACCESS_KEY)

  • PHP5を使っていること

  PHP7で動かそうとしたら色々なエラーに引っかかる。

  • サーバー上で動かすこと。自分はさくらのレンタルサーバー(スタンダード)を使った。

  ローカルXAMPPで実行しようとするとSSL関係のエラーになる。

 エラーを回避する手段はありそうだけど、とりあえずMWSの動作を確認するには前提を守ったほうが良い。

サンプルコードの取得
Amazon マーケットプレイスWebサービス にアクセス
f:id:mamimp:20170706111109j:plain

API&ドキュメントの商品をクリック
f:id:mamimp:20170706111121j:plain

PHPクライアントライブラリをクリック
f:id:mamimp:20170706111129j:plain

Downloadをクリック
MWSProductsPHPClientLibrary-2011-10-01._V531003271_.zip がダウンロードされる。
f:id:mamimp:20170706111140j:plain

認証情報の入力
src\MarketplaceWebServiceProducts\Samples\.config.inc.php を開く。
Your Access Key ID
Your Secret Key
Your Merchant Id
Your Marketplace Id
の文字列を自分が持っている認証情報に置き換える。
f:id:mamimp:20170706111831j:plain


ASINコードを用いてマーケットプレイスに出品中の商品価格を取得する。
src\MarketplaceWebServiceProducts\Samples\GetMyPriceForASINSample.php について解説します。

$serviceUrlがコメントアウトされているのでスラッシュを消して日本のエンドポイントを指定します。
f:id:mamimp:20170706112739j:plain

@TOTO: set request. Action can be passed as MarketplaceWebServiceProducts_Model_GetMyPriceForASIN
という記述の近くに$requestがあるので、ここに追加が必要な$request文を記述する。
f:id:mamimp:20170706115409j:plain

↓request文を追加
$request->setMarketplaceId(MARKETPLACE_ID); としたほうが良かった
f:id:mamimp:20170706120209j:plain

どのような値をrequestにセットする必要があるのかはドキュメントに書かれている。
f:id:mamimp:20170706120608j:plain
f:id:mamimp:20170706120617j:plain
f:id:mamimp:20170706120624j:plain
f:id:mamimp:20170706120635j:plain

また、どのようなfunctionを使えば値をセットできるのかはModelを見てみるとわかる。
src\MarketplaceWebServiceProducts\Model\GetMyPriceForASINRequest.php
f:id:mamimp:20170706120921j:plain
f:id:mamimp:20170706121036j:plain
f:id:mamimp:20170706121043j:plain

すべて編集し終えたらsrcディレクトリ以下を全てサーバーにアップロードしてGetMyPriceForASINSample.phpにアクセスすればXMLが返ってくる。

Html Agility Packを使ってスクレイピング(VB.NET)

【環境】

VB.NET(Visual Studio Community 2017)

HtmlAgilityPack

【目標】Yahoo!ファイナンスの米ドル/円の「売値113.681、買値113.684」という箇所をプログラムで取得して表示する。

f:id:mamimp:20170510131206j:plain

まずプロジェクトメニューからNuGetパッケージの管理をクリック

f:id:mamimp:20170510124818j:plain

参照をクリックして「HtmlAgilityPack」で検索

f:id:mamimp:20170510130845j:plain

HtmlAgilityPackをクリック

f:id:mamimp:20170510130858j:plain

インストールをクリック

f:id:mamimp:20170510130910j:plain

OKをクリック

f:id:mamimp:20170510130918j:plain

インストールが終わるとreadme.txtが開くので、閉じる。

f:id:mamimp:20170510130940j:plain

コードを記述する。

Public Class Form1
  Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim url As String = "https://finance.yahoo.co.jp/"
    Dim wc As System.Net.WebClient = New System.Net.WebClient
    Dim st As System.IO.Stream = wc.OpenRead(url)
    Dim enc As System.Text.Encoding = System.Text.Encoding.GetEncoding("UTF-8")
    Dim sr As System.IO.StreamReader = New System.IO.StreamReader(st, enc)
    Dim html As String = sr.ReadToEnd
    sr.Close()
    st.Close()

    Dim doc As HtmlAgilityPack.HtmlDocument = New HtmlAgilityPack.HtmlDocument
    doc.LoadHtml(html)

    Dim nodes1 As HtmlAgilityPack.HtmlNodeCollection =
      doc.DocumentNode.SelectNodes("/html[1]/body[1]/div[2]/div[2]/div[2]/div[1]/div[12]/div[1]/div[1]/div[1]/div[1]/div[1]")
    Dim nodes2 As HtmlAgilityPack.HtmlNodeCollection =
      doc.DocumentNode.SelectNodes("/html[1]/body[1]/div[2]/div[2]/div[2]/div[1]/div[12]/div[1]/div[1]/div[1]/div[2]/div[1]")
    TextBox1.Text = "売値: " & nodes1(0).InnerText & Environment.NewLine &
                    "買値: " & nodes2(0).InnerText & Environment.NewLine
  End Sub
End Class

f:id:mamimp:20170510130953j:plain

ボタンを押すと米ドル/円の売値と買値を取得するプログラムが完成

f:id:mamimp:20170510131020j:plain

===================================================================

ところで

doc.DocumentNode.SelectNodesの引数指定にはHAP explorerが役に立つ。

HAP explorer ダウンロード

HAP explorerの使い方

FileメニューからOpen Uri..をクリック

f:id:mamimp:20170510135037j:plain

URLを入力してOpenをクリック

f:id:mamimp:20170510135127j:plain

DocumentElementノードを開いていき、目的の情報を探す。

f:id:mamimp:20170510135207j:plain

さきほどのdoc.DocumentNode.SelectNodesの引数にXpathの値をコピペで指定すれば、その下のValueの値を取得することができるようになる。

f:id:mamimp:20170510135317j:plain

以上

特別だった2016年の思い出。声優の石上静香さんを知れて本当に良かった。

 もう2016年終わりますねー。2015年の暮れに声優の石上静香さんに魅了されてから活躍やイベントを追いかけて、とても特別で貴重な一年間を過ごすことができました。本当に楽しかった!

 石上さんファンの方の呼びかけに賛同してフラワースタンドを送ったことや、真夏の暑さの中、秩父の山奥でのイベントに参加して、みんなで合唱して、みんなで同じ花火を見たことなど、とても大切な思い出になりました。ライブイベントに初めて行ったときにはライブの常識を知らずに参加して不完全燃焼だったけれど、そういった失敗も大切な思い出です。

 私が石上さんの魅力に落ちた要因は、イベントや放送で表に現れている気さくさとは少しギャップのある真面目で誠実な側面でした。落第騎士の英雄譚で話題になった2015年の暮れ、ラジオなどでの気さくなノリをイメージしてお渡し会に参加しに行ったのですが、そこにいたのはラジオとは少し違う空気をまとって、ファンの方一人一人と誠実に応対する石上さんの姿でした。それまでイメージしていた表舞台の印象とは違う様子に面くらいましたが、誠実かつ真面目にファンの方一人一人と時間をとって話す様子を見てすぐに惹かれました。あのときの空気感をぜひ知ってほしいと思うほどおごそかで献身的でした。

 今はあんなに時間とって話とかできるのかな。直接お話できる機会はそう多くはないのですが、もし機会があったらぜひ参加してみてほしいなと思います。石上静香さんの魅力的な側面をきっと見ることができると思います。

 

 とりあえず年内は12/27(火)20:00~『しゃどばすチャンネル』のニコ生を見ましょ!

live.nicovideo.jp

 あと来年の2017年2月19日(日)には『TSUKIPRO LIVE 2017 ~ After Valentine ~』昼の部/夜の部で出演するみたい。今度はキングブレード振りまくらなくっちゃ。

TSUKIPRO LIVE 2017 ~After Valentine~ | ツキノ芸能プロダクション -ツキノプロ-

 

 石上さんファンならチョクメ!購読が超おすすめです!石上さんはちょくちょくメールを送ってくれるので大満足まちがいなしです!ぜひ購読しましょ!

ani.chokume.com

 じゃあまたね!ばいばいっ

コドモからオトナへ。甲斐性のある男はかっこいい!『KINGSGLAIVE FFXV』

f:id:mamimp:20161123190400j:plain

 『KINGSGLAIVE FINAL FANTASY XV』(映画)が個人的にツボで、作中主人公のニックスとレギス国王のイケメンっぷりに魅了される映画でした。時間を置いて二回見ちゃった。一回で見逃したところの意味がわかってとても楽しかったです。

f:id:mamimp:20161123190419j:plain

 昔ドラクエ5で主人公の父パパスのかっこよさやに感動したり、FF5ガラフエクスデスに対して見せたかっこよさに感動したものの、それらよりもさらに一歩踏み込んだものが見えた気がしました。人として父たらんとする姿が明瞭に描かれたFF15のレギス国王。まだコドモのノクティス王子の対比が効いていて、かなり良かったです。

 コドモからオトナへ成長するための明瞭なイメージを見ることができる今の子供がちょっとうらやましいです。コドモが楽しむファンタジーを極限まで追求して、オトナとしてのあり方にまで通じさせた作品として結構胸に来るものがあります。このレベルでドラクエ5のパパス王を見たかった。

 映画本編のニックスが良い感じに主人公してるので、ぶっちゃけノクティス王子よりもこっちのほうがカッコいいんじゃないかってほどでした。やっぱり男は男らしいほうがかっこいいですね。心からそう思いました。

f:id:mamimp:20161123190508j:plain

 

大河ドラマOP的な、壮大なBGMが結構好きです。

f:id:mamimp:20161109151857j:plain

 ちょうど今日、11月9日にモンスターハンターフロンティアZ(MHFZ)のアップデートが行われます。結構前に引退してしまったゲームなんですが、今でも時々関連ブログを見たり、ちょっとだけログインしたりしています。

 今回のMHFZは面白くなったら良いなーと思っています・・・!たしか今回から新規で始めるときに、キャラクター造形(顔・声など)が自由にできるみたいですよ。50ぐらいの顔や声、結構様々な声優さんがボイス参戦していてかなり豪華なラインナップになっています。個人的に大好きな石上静香さんのボイスが欲しいので要望アンケートで「欲しい!」って提出してきました。

 PCとPS3、そしてVITAは一緒に狩りに行けて、それに今度はPS4も加わることになっています。11月後半に使えるようになるクイックパーティー機能がうまく働けば、自由に遊びたい人も効率よく遊びたい人も満足できるのかな、できたらいいなーと思っています。

 プレビューサイトのBGMが壮大で個人的にツボなのでぜひ聴いてみてほしいです。昔からハズレ無しというMHFのBGMをぜひちょっとだけ聴いてみてほしいなぁ・・・!

 ↓ ↓ ↓

www.mhf-z.jp

気がゆ~っくり回復していく

気力体力がだいたい30%しかないけれど、のんびり療養できているおかげで回復中。制度に完全に助けられている。本当に助かっています。まだしばらくはのんびりして元の気を取り戻そう。