none
MSNの最新のQ&A RRS feed

  • 質問

  • MSNの最新のQ&Aの“URL“http://g.msn.com/1me10IE9JAJP/508”をPCにダウンロードして活用したく思います。
    同URLをクリックしますと掲載日付(例:2016年1月6日、23:33:01)が表示画面やソースでは確認できますので
    VBSで該当するタグをxmlデータとして以下の方法で処理しますが、アクセスが出来ません。
    その掲載日付のタグを処理したいので適切な方法(別途のURLも含めて)をお教えけますと幸いです。
    -----
    Set dateNodes = xmlDoc.getElementsByTagName("cfi:lastdownloadtime")
    -----
    2016年1月7日 11:18

回答

  • Microsoft コミュニティの「MSNの最新のQ&Aのタグ処理の件」からの移動ですね。

    そちらのコメントでも書いているのですが、

    http://g.msn.com/1me10IE9JAJP/508

    にアクセスすると

    http://rss.msn.com/ja-jp?feedoutput=rss

    にリダイレクトされて RSS の XML がダウンロードされますが、その XML を見る限り "cfi:lastdownloadtime" という要素は見当たりません。「表示画面やソースでは確認できますので」という部分の具体的手順や方法を示されると良いかと思います。


    hebikuzure

    • 回答の候補に設定 星 睦美 2016年1月15日 6:54
    • 回答としてマーク 星 睦美 2016年1月29日 5:16
    2016年1月8日 11:25
    モデレータ
  • 同URLをクリックしますと掲載日付(例:2016年1月6日、23:33:01)が表示画面やソースでは確認できますので

     何か、勘違いをされているように思います。

     とりあえず、件のフィードは RSS 2.0 の様です。RSS 2.0 の仕様には、「cfi:lastdownloadtime」という要素はありません。掲載日付であれば、「pubDate」(publication date)のはずです。そもそも、「掲載日付」という訳が間違っています。この要素は last download time、「前回ダウンロードした時間」です。ダウンロードした時間を、記事を掲載するときに付けることはできません。誰が、いつ、ダウンロードするかわからないのですから。
     ということを考えると、「IE のリーダーが付加した情報」と考えるのが順当でしょう。ということで、「購読」の前後でソースがどの様になるか、比較しました。

    購読していない状態で見えるソース

    <?xml version="1.0" encoding="UTF-8" ?>
    <rss version="2.0">
    <channel>
     <title>MSN Japan - Hotmail, Outlook.com, Skype, OneDrive, Bing</title>
     <description><![CDATA[MSN は ニュース、天気、マネー、スポーツ、ライフスタイル、自動車、動画など最新情報の提供から、Bing検索、メールの Outlook.com(旧 hotmail)など便利なサービスと連携するポータルサイトです。]]></description>
    <link>http://www.msn.com/ja-jp</link>
            <item>
                <title>記事のタイトル</title>
                <link>記事へのリンク</link>
                        <description>記事の概要</description>
                    <category></category>
            </item>
    </channel>
    </rss>
    

    購読後に見えるソース

    <?xml version="1.0" encoding="utf-8"?>
    <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005"><channel xmlns:cfi="http://www.microsoft.com/schemas/rss/core/2005/internal" cfi:lastdownloaderror="None"><title cf:type="text">MSN Japan - Hotmail, Outlook.com, Skype, OneDrive, Bing</title><description cf:type="text">MSN は ニュース、天気、マネー、スポーツ、ライフスタイル、自動車、動画など最新情報の提供から、Bing検索、メールの Outlook.com(旧 hotmail)など便利なサービスと連携するポータルサイトです。</description><link>http://www.msn.com/ja-jp</link><item><title xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" cf:type="text">記事のタイトル</title><link>記事へのリンク</link><description xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" cf:type="html">記事の概要</description><cfi:id>134</cfi:id><cfi:effectiveId>1051704672</cfi:effectiveId><cfi:read>false</cfi:read><cfi:downloadurl>http://rss.msn.com/ja-jp?feedoutput=rss</cfi:downloadurl><cfi:lastdownloadtime>2016-01-01T00:00:00.000Z</cfi:lastdownloadtime></item></channel></rss>
    

     次の違いがあります。

    • channel 要素に名前空間の定義が追加されている。
    • item 要素内に cfi 名前空間の要素が追加されている。

     「IE のリーダーが付加した情報である」ことが確認されました。よって、ウェブからダウンロードしたフィード情報に "cfi:lastdownloadtime" の要素が見つからないのは当然、ということになります。


    その掲載日付のタグを処理したいので適切な方法(別途のURLも含めて)をお教えけますと幸いです。

     取得した情報を、どの様に「活用」するかはアプリケーションの勝手なので、IE のリーダーと同じように、独自の要素を定義して追加し、保存すれば良いと思います。

     item 要素の識別には guid 要素を使うのだけど、使用されていないようですね。


    Jitta@わんくま同盟

    • 回答の候補に設定 星 睦美 2016年1月15日 6:54
    • 回答としてマーク 星 睦美 2016年1月29日 5:16
    2016年1月13日 11:35

すべての返信

  • Microsoft コミュニティの「MSNの最新のQ&Aのタグ処理の件」からの移動ですね。

    そちらのコメントでも書いているのですが、

    http://g.msn.com/1me10IE9JAJP/508

    にアクセスすると

    http://rss.msn.com/ja-jp?feedoutput=rss

    にリダイレクトされて RSS の XML がダウンロードされますが、その XML を見る限り "cfi:lastdownloadtime" という要素は見当たりません。「表示画面やソースでは確認できますので」という部分の具体的手順や方法を示されると良いかと思います。


    hebikuzure

    • 回答の候補に設定 星 睦美 2016年1月15日 6:54
    • 回答としてマーク 星 睦美 2016年1月29日 5:16
    2016年1月8日 11:25
    モデレータ
  • 同URLをクリックしますと掲載日付(例:2016年1月6日、23:33:01)が表示画面やソースでは確認できますので

     何か、勘違いをされているように思います。

     とりあえず、件のフィードは RSS 2.0 の様です。RSS 2.0 の仕様には、「cfi:lastdownloadtime」という要素はありません。掲載日付であれば、「pubDate」(publication date)のはずです。そもそも、「掲載日付」という訳が間違っています。この要素は last download time、「前回ダウンロードした時間」です。ダウンロードした時間を、記事を掲載するときに付けることはできません。誰が、いつ、ダウンロードするかわからないのですから。
     ということを考えると、「IE のリーダーが付加した情報」と考えるのが順当でしょう。ということで、「購読」の前後でソースがどの様になるか、比較しました。

    購読していない状態で見えるソース

    <?xml version="1.0" encoding="UTF-8" ?>
    <rss version="2.0">
    <channel>
     <title>MSN Japan - Hotmail, Outlook.com, Skype, OneDrive, Bing</title>
     <description><![CDATA[MSN は ニュース、天気、マネー、スポーツ、ライフスタイル、自動車、動画など最新情報の提供から、Bing検索、メールの Outlook.com(旧 hotmail)など便利なサービスと連携するポータルサイトです。]]></description>
    <link>http://www.msn.com/ja-jp</link>
            <item>
                <title>記事のタイトル</title>
                <link>記事へのリンク</link>
                        <description>記事の概要</description>
                    <category></category>
            </item>
    </channel>
    </rss>
    

    購読後に見えるソース

    <?xml version="1.0" encoding="utf-8"?>
    <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005"><channel xmlns:cfi="http://www.microsoft.com/schemas/rss/core/2005/internal" cfi:lastdownloaderror="None"><title cf:type="text">MSN Japan - Hotmail, Outlook.com, Skype, OneDrive, Bing</title><description cf:type="text">MSN は ニュース、天気、マネー、スポーツ、ライフスタイル、自動車、動画など最新情報の提供から、Bing検索、メールの Outlook.com(旧 hotmail)など便利なサービスと連携するポータルサイトです。</description><link>http://www.msn.com/ja-jp</link><item><title xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" cf:type="text">記事のタイトル</title><link>記事へのリンク</link><description xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" cf:type="html">記事の概要</description><cfi:id>134</cfi:id><cfi:effectiveId>1051704672</cfi:effectiveId><cfi:read>false</cfi:read><cfi:downloadurl>http://rss.msn.com/ja-jp?feedoutput=rss</cfi:downloadurl><cfi:lastdownloadtime>2016-01-01T00:00:00.000Z</cfi:lastdownloadtime></item></channel></rss>
    

     次の違いがあります。

    • channel 要素に名前空間の定義が追加されている。
    • item 要素内に cfi 名前空間の要素が追加されている。

     「IE のリーダーが付加した情報である」ことが確認されました。よって、ウェブからダウンロードしたフィード情報に "cfi:lastdownloadtime" の要素が見つからないのは当然、ということになります。


    その掲載日付のタグを処理したいので適切な方法(別途のURLも含めて)をお教えけますと幸いです。

     取得した情報を、どの様に「活用」するかはアプリケーションの勝手なので、IE のリーダーと同じように、独自の要素を定義して追加し、保存すれば良いと思います。

     item 要素の識別には guid 要素を使うのだけど、使用されていないようですね。


    Jitta@わんくま同盟

    • 回答の候補に設定 星 睦美 2016年1月15日 6:54
    • 回答としてマーク 星 睦美 2016年1月29日 5:16
    2016年1月13日 11:35