或阿呆のブログ

Pythonを好んで使っているプログラマです。Ruby,Perl,PowerShell,VBAなどでもたまに書いています。おバカなことが大好きです。

WindowsPowerShellでmeta descriptionを取得する

meta descriptionとは

引用させていただきます。

meta descriptionはhead内に記述される、ページの概要を表すテキスト情報です。meta descriptionを最適化することでの順位上昇などの効果は現在のGoogleではほとんどありません。
しかしmeta descriptionはサマリーとして検索結果に表示される可能性があるため、オーガニック検索のクリック率には大きく影響を与えます。そのためmeta descriptionはページ内容を端的にまとめ、正しく記述します。
meta descriptionとは | A~Z [SEO HACKS]

当ブログのmeta descriptionの取得の仕方

ちょっと迷ったんだけど、まずはソースコードを眺めてみた。最近あまりソースを見ていたかったんだが、久しぶりに見てびっくしりた。descriptionって何種類かあるのね?
ちなみに、はてなブログでは以下があるようだ。簡潔かつ、適当かつ、根拠なしに説明も付け加えてみた。

property="og:description"

SNS向けのdescription

name="twitter:description"

twitter向けのdescrpiton

name="description"

通常のウェブサイト向けのdescrpiton

meta description取得のソースコード

PS>$url = "http://oneshotlife-tom.hatenadiary.jp/"

PS>$res = Invoke-WebRequest $url

PS>$res.AllElements | ?{ $_.tagName -like "meta" -and $_.outerHTML -like "*description*" }

innerHTML : 
innerText : 
outerHTML : <meta content="Pythonを好んで使っているプログラマです。Ruby,Perl,PowerShell,VBAなどでもたまに書いています。おバカなことが大好きで
            す。" property="og:description">
outerText : 
tagName   : META
content   : Pythonを好んで使っているプログラマです。Ruby,Perl,PowerShell,VBAなどでもたまに書いています。おバカなことが大好きです。
property  : og:description

innerHTML : 
innerText : 
outerHTML : <meta name="twitter:description" content="Pythonを好んで使っているプログラマです。Ruby,Perl,PowerShell,V
            BAなどでもたまに書いています。おバカなことが大好きです。">
outerText : 
tagName   : META
name      : twitter:description
content   : Pythonを好んで使っているプログラマです。Ruby,Perl,PowerShell,VBAなどでもたまに書いています。おバカなことが大好きです。

innerHTML : 
innerText : 
outerHTML : <meta name="description" content="プログラミング言語Pythonを好んで使っているプログラマのブログです。">
outerText : 
tagName   : META
name      : description
content   : プログラミング言語Pythonを好んで使っているプログラマのブログです。

注意点

御覧になっていただければわかるように、プロパティ名が違う。。。nameだったり、propertyだったり。なので、ラッパー関数なんかを作って挙げて、内部処理を隠蔽してあげればいいのではないかと。