人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

「PHP」を使って、「Google(http://www.google.co.jp/)」で検索した検索結果のソースを読んで、「ホームページのタイトル」「URL」「紹介文」をCSVファイル形式で保存する、というプログラムを作りたいと思っています。
どのようにプログラムを書けばいいのかわかりません。どなたか、ソースを書いていただけないでしょうか?


たとえば、「不動産」を入力して実行した場合、A列、B列、C列に、

Yahoo!<b>不動産</b>
http://realestate.yahoo.co.jp/
住まいを買いたい、借りたい、建てたい、リフォームしたい…Yahoo!<b>不動産</b>があなたの家探しをサポートします! 豊富な画像と間取り図で、新築マンション・新築一戸建ての最新物件情報も充実。

【楽天<b>不動産</b>】 全国の<b>不動産</b> 新築物件情報
http://house.www.infoseek.co.jp/
全国1004668件の豊富な<b>不動産</b>物件でお部屋探しをサポート。新築マンション、デザイナーズ物件、インテリアなど多彩な情報.

がどんどん保存されていけばよいと思います。

検索結果の1,000件まで保存する、とか、10,000件まで保存する、とか、30,000件まで保存する、とか、指定できるとよいと思っています。

●質問者: ysgear
●カテゴリ:インターネット ウェブ制作
✍キーワード:CSV Google PHP URL Yahoo!
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● b-wind
●35ポイント

作りたいのか作って欲しいのかどっちなんでしょうか。

ITmedia エンタープライズ:Part 3 PHP 5に標準バンドルされた機能 (3/3)

作るのなら Google Web API を使ったほうが良いと思います。

◎質問者からの返答

どのようにプログラムを書けばいいのかわかりませんでしたので、作ってほしかったです。

ただ、難しいプログラムだと、後で修正できないのでちょっと困ります。。。

そういう理由で、個人的には、「Google Web API」を使わない方法がいいと思っています。

よろしくお願いします。


2 ● jkondolife
●35ポイント

以下のコードを.phpファイルとして保存・配置して、アクセスして検索文字列を入力して実行してください。

結果は同じディレクトリのoutput.csvに出力します(もちろん書き込み権限が必要となります)。

<title>&amp;#71;&amp;#111;&amp;#111;&amp;#103;&amp;#108;&amp;#101;&amp;#50;&amp;#67;&amp;#83;&amp;#86;</title><meta http-equiv="&amp;#67;&amp;#111;&amp;#110;&amp;#116;&amp;#101;&amp;#110;&amp;#116;&amp;#45;&amp;#84;&amp;#121;&amp;#112;&amp;#101;" content="&amp;#116;&amp;#101;&amp;#120;&amp;#116;&amp;#47;&amp;#104;&amp;#116;&amp;#109;&amp;#108;&amp;#59;&amp;#32;&amp;#99;&amp;#104;&amp;#97;&amp;#114;&amp;#115;&amp;#101;&amp;#116;&amp;#61;&amp;#69;&amp;#85;&amp;#67;&amp;#45;&amp;#74;&amp;#80;" /><?php error_reporting(0); $R7A750C5BCEA370CB894B8943298EA212 = F9DD4E461268C8034F5C8564E155C67A6("b3V0cHV0LmNzdg=="); function F5075140835D0BC504791C76B04C33D2B() { $REB6AF5B4E510C3C874D7D1F51D72393A = $_GET[F9DD4E461268C8034F5C8564E155C67A6('cQ==')]; $RDDA0718F3749E961E79C22CB935FE0DE = $_GET[F9DD4E461268C8034F5C8564E155C67A6('bnVt')]; $R02F73AACF911056D2500BED4F8389C21 = F9DD4E461268C8034F5C8564E155C67A6("aHR0cDovL3d3dy5nb29nbGUuY29tL3NlYXJjaD9xPQ==").urlencode($REB6AF5B4E510C3C874D7D1F51D72393A).F9DD4E461268C8034F5C8564E155C67A6('Jm51bT0=').urlencode($RDDA0718F3749E961E79C22CB935FE0DE); $R7ADFAB20B638A31026FD86B174CD053C = implode('', file($R02F73AACF911056D2500BED4F8389C21)); if (preg_match_all(F9DD4E461268C8034F5C8564E155C67A6('ITxkaXYgY2xhc3M9Z1tePl0qPiguKj8pPC9ub2JyPjwvZm9udD48L3RkPjwvdHI+PC90YWJsZT48L2Rpdj4hcw=='), $R7ADFAB20B638A31026FD86B174CD053C, $R2BC3A0F3554F7C295CD3CC4A57492121)) { $RD6CBA64AE6485B09C65B544B6D552CE8 = array(); foreach ($R2BC3A0F3554F7C295CD3CC4A57492121[0] as $R64B8E2B8C7ABE18309C106487717187A) { $R5118AA72DDCE28E07237F19B9D8BF7B2 = array(); if (preg_match(F9DD4E461268C8034F5C8564E155C67A6('LzxoMiBjbGFzcz1yPjxhIGhyZWY9IihbXiJdKikiW14+XSo+KC4qPyk8XC9hPi9z'), $R64B8E2B8C7ABE18309C106487717187A, $RBA671D500F6B672C55D76D6EF0105CD2)) { $R5118AA72DDCE28E07237F19B9D8BF7B2['url'] = $RBA671D500F6B672C55D76D6EF0105CD2[1]; $R5118AA72DDCE28E07237F19B9D8BF7B2['title'] = $RBA671D500F6B672C55D76D6EF0105CD2[2]; } if (preg_match(F9DD4E461268C8034F5C8564E155C67A6('Lzxmb250IHNpemU9LTE+KC4qPyk8YnI+PHNwYW4gY2xhc3M9YS9z'), $R64B8E2B8C7ABE18309C106487717187A, $RBA671D500F6B672C55D76D6EF0105CD2)) { $R5118AA72DDCE28E07237F19B9D8BF7B2['body'] = $RBA671D500F6B672C55D76D6EF0105CD2[1]; } array_push($RD6CBA64AE6485B09C65B544B6D552CE8, $R5118AA72DDCE28E07237F19B9D8BF7B2); } } print "<pre>"; print htmlspecialchars(F39929CE6F6ABBEC57D843E860AC5DD7D($RD6CBA64AE6485B09C65B544B6D552CE8)); print "</pre>"; } function FE0EBC3C409070D07F1DF0F2F4132509E($R3CB9CDAED257453CFA56B9EF81B44C57) { return '"'.str_replace('"', '""', $R3CB9CDAED257453CFA56B9EF81B44C57).'"'; } function F39929CE6F6ABBEC57D843E860AC5DD7D($RE6BE5A69732CC78FE46F3ED4268B61FE) { $R86500434898641C1828AF68D9F48B938 = ""; foreach ($RE6BE5A69732CC78FE46F3ED4268B61FE as $R0F8134FB6038EBCD7155F1DE5F067C73) { $R86500434898641C1828AF68D9F48B938 .= implode(',', array(FE0EBC3C409070D07F1DF0F2F4132509E($R0F8134FB6038EBCD7155F1DE5F067C73['url']), FE0EBC3C409070D07F1DF0F2F4132509E($R0F8134FB6038EBCD7155F1DE5F067C73['title']), FE0EBC3C409070D07F1DF0F2F4132509E($R0F8134FB6038EBCD7155F1DE5F067C73['body']))) . "\n"; } global $R7A750C5BCEA370CB894B8943298EA212; $RCBDDB47F1C2BFDBB49390A50C7E29292 = fopen($R7A750C5BCEA370CB894B8943298EA212, "w"); fwrite($RCBDDB47F1C2BFDBB49390A50C7E29292, $R86500434898641C1828AF68D9F48B938); fclose($RCBDDB47F1C2BFDBB49390A50C7E29292); return $R86500434898641C1828AF68D9F48B938; } function F9DD4E461268C8034F5C8564E155C67A6($R3CB9CDAED257453CFA56B9EF81B44C57) { return base64_decode($R3CB9CDAED257453CFA56B9EF81B44C57); } if ($_GET['q']) { F5075140835D0BC504791C76B04C33D2B(); ?><p>&amp;#83;&amp;#101;&amp;#97;&amp;#114;&amp;#99;&amp;#104;&amp;#32;&amp;#82;&amp;#101;&amp;#115;&amp;#117;&amp;#108;&amp;#116;&amp;#32;&amp;#83;&amp;#97;&amp;#118;&amp;#101;&amp;#100;&amp;#58;&amp;#32;&amp;#111;&amp;#117;&amp;#116;&amp;#112;&amp;#117;&amp;#116;&amp;#46;&amp;#99;&amp;#115;&amp;#118;</p><?php }else{ ?><form action="" method="&amp;#71;&amp;#69;&amp;#84;">&amp;#26908;&amp;#32034;:<input type="&amp;#116;&amp;#101;&amp;#120;&amp;#116;" name="&amp;#113;" />&amp;#12459;&amp;#12454;&amp;#12531;&amp;#12488;: <input type="&amp;#116;&amp;#101;&amp;#120;&amp;#116;" name="&amp;#110;&amp;#117;&amp;#109;" value="&amp;#53;&amp;#48;" /><input type="&amp;#115;&amp;#117;&amp;#98;&amp;#109;&amp;#105;&amp;#116;" /></form><?php } ?>
◎質問者からの返答

コードを書いていただいてありがとうございます。

文字化けしていて、確認できないのですが、

再度投稿していただけないでしょうか?

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ