• ベストアンサー

RSSの取得方法

RSSの取得方法 お世話になります。 掲題の件なのですが、ブログなどのRSSを取得→XMLを解析しそれを 自サイトに表示なんてことが可能だと思うのですが、 『アーカイブ』や『当月のカレンダー』などのデータはどのようにして取得 すればよいのか、もし方法などお分かりでしたらご教授頂ければ と思います。 ※ちなみにブログはアメブロです。 以上、ご教授のほど宜しくお願い申し上げます。

  • PHP
  • 回答数1
  • ありがとう数4

質問者が選んだベストアンサー

  • ベストアンサー
  • pnck
  • ベストアンサー率90% (9/10)
回答No.1

RSSで提供されていないデータが欲しいということならば、 自分でHTMLを解析して取得するしかないのではないでしょうか? どのようなデータが実際に欲しいのかは、分かりかねますが、 例えばアーカイブデータで、 2010 9月  3日 タイトル名   本文・・・  1日 タイトル名   本文・・・ 2010 8月  30日 タイトル名   本文・・・ というようなデータが欲しい場合、 トップページのHTMLソースから、 アーカイブページの月別リンク先URLと2010年9月などの文字列を抽出し、 リンク先のHTMLソースから、日付、タイトル、本文を抽出します。 あとは抽出したデータを好きなように出力します。 多くのブログはソースに一定の規則があるので、抽出は容易だと思います。 HTMLの解析には、DOM、SimpleXML、正規表現など色々方法はあると思います。 この方法でサイトアクセス毎に毎回アメブロにアクセスして、 ソースを取得するのは効率が悪いので、 (特にアーカイブが多い場合、レスポンスがなかなか返ってこなかったり) 数時間に1回だけデータを取得、キャッシュしておいて、 キャッシュデータを使用するのがいいと思います。

kuro_10
質問者

お礼

お返事遅くなりまして申し訳ございませんでした。m(__)m やはりHTMLを解析するしか方法はないですよね。 分かりやすいご説明、誠に有難うございました。 PHPで解析(正規表現)しようと思いますので、キャッシュの利用には、 PHP PEARライブラリのCache_Liteを利用しようと思います。 この度は誠に有難うございました。

関連するQ&A

  • メロメロパークでRSSの取得ができない

    アメブロを利用していて、メロメロパークを設置していますが、 RSSの自動取得ができません。 FAQを見てRSSのURLをコピー、貼り付けしてみたのですが、できませんでした。 パソコン初心者です。ブログも始めたばかりで分からないことが多いのですが、 どなたかご存知の方がいらっしゃいましたら教えてください。

  • XML_RSSでatomの解析はできますか

    こんにちは まったくrssを理解してないしだいです。 でも一様phpとpearのXML_RSSでrdfの取得、解析はできましたが、最近atomを知り、これも取得、解析したいと願います。 現在、友人達のブログのrdfを私のサイトに表示していますが、同じようにatomも取得解析したいのです。(なかにはatomでしか配信していないbolgもあるため。) atomの自作リーダーを作る方法はrssとどのように違うのででょうか? また、atomリーダーを作成するのに便利なサイトがあれば是非教えてください。 よろしくお願いします。

    • 締切済み
    • PHP
  • RSSから情報を取得するには

    RSSを利用して情報を取得し色々と利用しようと思いRSSの技術については全く知識はありませんがXMLファイルを取得してそこから情報を切り出すくらいはできたのでいろいろなRSSフィードから取得していたら、XMLファイルをローカルに保存するとブラウザ上で見れる内容の最初の一部分しかないxmlファイルでした。 具体的にははてなキーワードAPIのRSSフィードです。これを正常に取得できないのは何がいけないのでしょうか?ブラウザで名前をつけて保存を行うと問題なく保存ができるので、ダウンロードの際の要素?属性?の様な物が間違ってるのでしょうか? どうかご教授ください。

    • 締切済み
    • XML
  • RSSを探す

    ブログ等のRSSを、トップページのURLを指定すると取得するようにしたいです。 たとえば、 http://www.example.com/ を 指定すると、 http://www.example.com/rss.xml を取得します。 metaタグを読みに行くのが良いと思うのですが、どうすれば実装できますでしょうか? 専用のライブラリ等があるのでしょうか?

    • ベストアンサー
    • PHP
  • PHPでのRSSの読み込み件数について

    普通はRSSは、表示される件数は決まっていると思うのですが、 その件数以上にブログの記事のタイトルなどを読み込みたいのです。 たとえば http://e0166.blog89.fc2.com/?xml というRSSだと、15件までしか表示されませんが、 16件目をPHPで取得したいです。 Google Readerだと、16件以上も読み込んでくれるのですが。。。 HTMLを読み込むしかないのでしょうか? また、そのときのアドバイスなどもください。

    • 締切済み
    • PHP
  • アメーバブログのxmlファイルの入手方法

    アメブロのxmlファイルを見ようとして 「XML RSS1.0」あるいは「XML RSS2.0」のアイコンをクリックしてみるとブラウザーが開きブログの内容が表示されます。ただ表示レイアウトなどをカスタマイズする必要があるため、XMLファイル形式(要素名を開始タグに記述し、終了タグとの間に内容が記述されている形式)でブログの内容を取得したいのですが、方法というかURLが分かりません。よろしくお願いします。

    • ベストアンサー
    • XML
  • RSSで特定のカテゴリを取得する方法

    今までブログを書いていて、今はHPを作っています。 ブログには様々なジャンルの記事を書いていますが、 HPは特定のジャンルに対して作る予定です。 そこで今までブログに書いた記事をHPにRSSでフィードして載せようと考えていますが、 MagpieRSSを使って最新記事を無事に取得はできましたが、 特定のカテゴリの記事のみの取得はできないでしょうか? ネット上のプログラムを参考にして、 --------------------------- require_once 'rss_fetch.inc'; $url = '取得したいサイトのURL'; $rss = fetch_rss($url); $title = $rss->channel['title']; --------------------------- どこにもカテゴリ取得のコマンドがないのですが、そもそもできないものでしょうか? MagpieRSSじゃなくても、できる方法があれば紹介していただければと思います。 よろしくおねがいします。

    • 締切済み
    • PHP
  • PHPでRSSから要素を取得する方法について

    PHPでRSSから要素を取得する方法について 下記のrss情報から「lddata:syousai」にあるA,B,Cの各""内の情報をphpで変数に 格納しようと思っていますがどうしてもうまく行きません。 このような形式の場合、どのようにして取得したら良いのか お知恵を貸していただけないでしょうか。 PHPを勉強し始めたばかりなので恥ずかしい質問内容になっているかも知れませんが 何卒よろしくお願いいたします。 ▼XML 詳細 ・rssの場所 http://test.com/forecast/rss/test.xml ・rssの内容 <?xml version="1.0" encoding="UTF-8" ?> - <rss version="2.0" xmlns:lddata="http://test.com/ns/rss/2.0"> - <channel> <title>test</title> <link>http://test.com</link> - <item> <title>情報タイトル</title> <link>http://test.com/jyoho/2010-05-15-18-24.html?r=?rss</link> <lddata:syousai A="東京都" B="9" C="日付データ" />   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ↑変数に格納したい場所 </item> </channel> </rss>

    • ベストアンサー
    • PHP
  • アメブロでテーマを指定したRSSの取得

    アメブロにはカテゴリといった概念がないようで、その代わりにテーマというものがあるのですが、このテーマごとにRSSを取得したいと思うのですが可能でしょうか? RSSのURLを見ると、全体的な情報しか吐き出しておらず、取得してもテーマを絞った取得を行うことが出来ません・・・。 例としては、以下の様なアメブロが合った場合、イラストというテーマのみを取得するという感じです。 http://ameblo.jp/nakagawa-shoko/ こういった場合には、どのような方法を用いて特定テーマの記事のみを取ることが出来ますでしょうか? お詳しい方、いらっしゃいましたらヒント、アドバイスの程宜しくお願いします。

    • ベストアンサー
    • PHP
  • アメブロで指定テーマでRSS取得は不可能ですか?

    現在アメブロのテーマを指定したRSSを取得・表示を考えているのですがRSSを見ると全てが1つのRSSとして配信されている感じです。 カテゴリという概念もないということを知りました。 どうしたら、指定したテーマでの取得が可能になりますか? この様な記事を見つけて試してみたのですが、エラー?が表示されてしまい、表示することは出来ませんでした。 http://okwave.jp/qa/q8065011.html どなたか良い方法をご存知の方いらっしゃいましたら、アドバイスを頂けますと助かります。 よろしくお願いいたします。

    • 締切済み
    • PHP

専門家に質問してみよう