• 締切済み

PHP URL→HTML→取得→RSS出力

PHP URL指定→HTMLソース→指定タグ要素取得(複数)→RSS(.xml)出力について URLからHTMLソースを取得し、要素を取得しRSSファイルを作りたいと思っています。 例えば、http://shopping.yahoo.co.jp/ranking/のURLのHTMLソース内から <p class="elPhoto"> <a href="○○○.html"> <img src="【取得したい文字列1】" width="200" height="200" alt="○○○"> </a> </p> <h4 class="elTitle"> <a href="【取得したい文字列2】">【取得したい文字列3】</a> </h4> <h4 class="elPrice"> <span>【取得したい文字列4】</span>円 </h4> <p class="elSellStatus"></p> <h4 class="elStore"> ストア:<a href="【取得したい文字列5】">【取得したい文字列6】</a> </h4> など指定する各要素を全件取得し、 <item> <title>【取得したい文字列3】</title> <link>【取得したい文字列2】</link> <description> 【取得したい文字列1】<br> 【取得したい文字列4】<br> 【取得したい文字列6】<br> 【取得したい文字列5】 </description> </item> などとRSSで全件出力し、xmlファイルを作成したいです。 アドバイス、ご指導お願いします。

  • PHP
  • 回答数2
  • ありがとう数7

みんなの回答

  • notnot
  • ベストアンサー率47% (4847/10260)
回答No.2
noname#244856
noname#244856
回答No.1

関連するQ&A

  • SeesaaブログのRSS取得で、ブログの本文も取得したいのですが・・・。

    RSS取得を使用し、更新情報を載せるまでは出来ました。 タイトルだけではなく、本文も掲載したいです。 Seesaaでは可能でしょうか? RSS用の特殊タグが必要かと思うのですが、タグがわかりません。 一応実験的に試してみたタグが、 「rss_feeds.description」だったのですが、出来ませんでした。 RSS取得のhtmlは <div class="sidetitle"><% content.title %></div> <div class="side"> <% content.header -%> <% loop:list_rss -%> <a href="<% rss_feeds.page_url %>" target="_blank"><% rss_feeds.name %></a><br /> <% /loop -%> <% content.footer -%> </div>

  • RSSを取得したいのですが

    下記サイトを参考に、以下のコードを埋め込んだのですが、 http://plaza.rakuten.co.jp/kemusiro/diary/200601150000/ 日付が (1970/01/01 00:00:00) と表示された上に文字化けしてしまいます。 MagpieRSSはmagpierss-0.72.tar.gzから必要ファイルを、index.phpの下におきました。 正常に表示させるためには、どう直せばよいでしょうか? <?php require_once('magpierss/rss_fetch.inc'); define('MAGPIE_OUTPUT_ENCODING', 'UTF-8'); $count = 5; $length = 60; $url = 'http://api.plaza.rakuten.ne.jp/kemusiro/rss/'; $rss = fetch_rss($url); echo "<ul>"; array_splice($rss->items, $count); foreach ($rss->items as $item) { $href = $item['link']; $title = mb_convert_encoding($item['title'], "SJIS", "auto"); $date = date('Y/m/d H:i:s', parse_w3cdtf($item['dc']['date'])); $description = mb_convert_encoding($item['description'], "SJIS", "auto"); if (mb_strlen($description) > $length) { $description = mb_strcut($description, 0, $length) . "..."; } echo "<li>"; echo "<FONT color=\"#ff8040\">(" . $date . ")</FONT> "; echo "<a href=$href>" . $title . "</a><BR>"; echo $description . "</li>"; } echo "</ul>"; ?>

    • 締切済み
    • PHP
  • PHPでHTMLソースを取得する方法はありますか?

    PHPでHTMLソースを取得する方法はありますか? RSSで複数のHTMLソースを取得しました。 以下のことをやりたいのですが、こういったことは可能でしょうか? ・複数のHTMLソースを取得する(同じサイトからなのでタグの種類も大体同じものです) ・その中から<data>タグを取得する(dataの中にはそれぞれ適当な数字が入っています) ・それをソートして、ソート順にURLを表示する。 このようなことは可能でしょうか? $RSS=RSSのURL(XML) foreach($RSS as $value){ $URL[]=$value->URL; } for ($i = 0, $n = count($URL); $i < $n; $i++) { echo $URL[$i] . "<br />"; } これでそれぞれのURLが URL1 URL2 URL3 とそれぞれ表示されます。これらのURLからそれぞれの<data>タグを取得して上のようなことをやりたいです。 説明が下手で申し訳ありませんが、よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHPを使ってRSSコードから画像取得をしたい

    PHP初心者です。 PHPを使ってRSSコードから画像取得をしたいと考えていますが、 <content:encoded>や<description>以外の要素を見て抜き出すことはできないのでしょうか? 例えばこのRSSコード内の http://ch.nicovideo.jp/kindan-nama/live?rss=2.0 <nicoch:live_thumbnail>の要素を見て http://live.nicovideo.jp/thumb/175454.jpg ↑この画像を取得することはできないのでしょうか? 調べているうちにRSSは全ての情報を提供してくれているわけではないということは分かってきましたが、 RSSコードを見てどこからどこまでが提供されているのかが分からず... 何卒よろしくお願い致します。

    • ベストアンサー
    • PHP
  • HTMLにエクセルの情報を配置したい

    エクセルについて教えてください。 エクセルのA列に商品名、B列に画像、C列に商品の説明文、D列に商品URLを記入して、これが30商品=30行になっているとします。そして、このエクセルの文字列をHTMLの特定の場所に配置したいのです。 HTMLは、 <div class="block"> <img src="images/[B1]" alt="[A1]" /><br /> <a href="[D1]">[A1]</a><br /> <p>[C1]</p> </div> <div class="block2"> <ul> <li><a href="[D2]">[A2}</a></li> <li><a href="[D3]">[A3}</a></li> </div> などのように、あらかじめエクセルの情報を入れたい場所をテンプレート化して、[A1}とあればエクセルのA1の文字列を、[B1]とあれば、エクセルのB1のセルの文字列が入るようなイメージなのですが、こんなことってできるものなのでしょうか? 似たようなものにBP Tranというフリーソフトがあり、HTMLファイルとCSVファイルを選択すると、自動でHTMLファイルを任意の名前で出力してくれるものがありまして、これのような感じなのですが・・・。 どこまでが出来て、どこまでが出来ないのか、また出来るとすればどのような方法があるのかが、分からず検索がうまくできない状況で困っています。 詳しい方がいらっしゃいましたら、ご教授宜しくお願いします。

  • クラス名の振られた要素の文字列取得方法

    Javascriptで特定のクラス名の付けられた要素から、タグに挟まれた文字列を取得する方法を教えてください。 ある自動生成されるページに、以下のように決まったクラス名が振られる要素があります。 これらの要素から"AAA"や"BBB"の部分を取得するにはどうすればいいでしょうか? 教えてください。 <a href="hoge.html" class="fuga">AAA</a> <p class="piyo">BBB</p>

  • Another HTML-lint gatewayでHTML文書の文法

    Another HTML-lint gatewayでHTML文書の文法をチェックしましたが、次の項目の修正方法がわかりません。 HTMLヴァージョンは「XHTML1.0 Transitional」(DreamweaverCS5) (1)空要素タグ <img> は <img /> として閉じなければなりません <p>    <img src="image/otaxoutline.JPG" width="480" height="360" alt="oxox"></p> (2)空要素タグ <img> の要素には空白さえも含めることはできません p class="menu-left"><a href="http://twitter.com/xxxx"><img src="image/otaxtwitter.jpg" width="85" height="45" alt="oxox"> </a></p> (3)空要素タグ <br> の要素には空白さえも含めることはできません (4)空要素タグ <br> は <br /> として閉じなければなりません by <a href="http://www.automatic-link.net/" target="_blank">oxox</a><br> (5)空要素タグ <hr> の要素には空白さえも含めることはできません (6)空要素タグ <hr> は <hr /> として閉じなければなりません <p class="center">                 <a href="http://www.otax81.com/FormMail/contact/FormMail.html"><img src="image/otaxtoiawaefooter.jpg" width="435" height="171" alt="footer問合せ"></a></p> <hr> <参考> http://openlab.ring.gr.jp/k16/htmllint/htmllint.html http://otax81.com/

  • 【PHP】正規表現でHTMLを置換したいのですが・・・

    HTMLのソースを、正規表現で置換をしてから画面に出力したいのですが、どのような正規表現を記述すればいいのか分からず困っています。。。。 下記(befor)の4つのリンクのうち、ファイルの拡張子が、pdf、doc、xlsのファイルだけ「download.php」というPHPのプログラムを通してからダウンロードさせるために、文字列を(after)の様に置換をしたいのですが、なかなかうまくいきません。。。 どなたか、ご指導のほど宜しくお願いいたします。 (befor) $html = '<a href="/files/aaaa.pdf">あ</a><br>' . '<a href="/files/cccc.html">い</a><br>' . '<a href="/files/dddd.doc">う</a><br>' . '<a href="/files/eeee.xls">え</a><br>' ; (after) $html = '<a href=download.php?url=/files/aaaa.pdf>あ</a><br>' . '<a href="/files/cccc.html">い</a><br>' . '<a href=download.php?url=/files/dddd.doc>う</a><br>' . '<a href=download.php?url=/files/eeee.xls>え</a><br>' ;

    • ベストアンサー
    • PHP
  • 正規表現で抜き出した特定の文字列をDBに格納する

    外部Webページのソースから正規表現を用いて特定の文字列を抜き出したいと思っています。外部Webページのソースは以下の通りです。 <td>  <div class="s-box left">   <a href="URL"><img src="" alt="" width="" height="" border="" class="book" /></a>   <h3><a href="URL">書名</a></h3>   <h4>著者:文字列<br />定価(税込):500円</h4>  </div>  <div class="s-box center">   <a href="URL"><img src="" alt="" width="" height="" border="" class="book" /></a>   <h3><a href="URL">書名</a></h3>   <h4>著者:文字列<br />定価(税込):710円</h4>  </div>  <div class="s-box right">   <a href="URL"><img src="" alt="" width="" height="" border="" class="book" /></a>   <h3><a href="URL">書名</a></h3>   <h4>著者:文字列<br />定価(税込):730円</h4>  </div> </td> 上記のようなソースからdiv classごとに、 書名 著者:文字列 定価(税込):---円 という具合に抜き出したく思っていまが、正規表現がわからずプログラムが組めません。また、その抜き出した文字列をDB(MySQL)に自動的に格納するためにはどうしたらよいか。どなたかご教授頂けないでしょうか。宜しくお願い致します。

    • ベストアンサー
    • PHP
  • HTMLタグを取得する正規表現

    HTMLタグを取得する正規表現が出来ず、困っています。 <b><a href="http://aaa.ccc.co.jp">あいうえお</a></b> このような文字列であった時、 「<b><a href="http://aaa.ccc.co.jp">」を取得したいのです。 プログラムで制御する事も含め、以下のような動作を望んでいます。 1.「<b><a href="http://aaa.ccc.co.jp">」を取得する 2.対象文字列を「あいうえお</a></b>」にする 3.「あいうえお」を取得する 4.対象文字列を「</a></b>」にする 5.「</a></b>」を取得する やりたい事は「実際の表示上の文字数で文字数制限を行い、制限分の文字列を出力する」です。 なので、もし上記のような事をやる必要ないというのなら、その手段もご教示頂ければと思います。

    • 締切済み
    • PHP

専門家に質問してみよう