• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:複数のWEBページから特定の文字を抜き出したいです)

複数のWEBページから特定の文字を抜き出したいです

pa_cottaの回答

  • pa_cotta
  • ベストアンサー率43% (25/58)
回答No.2

このようなことを「スクレイピング」というのですが、どうしてもある程度のプログラム知識が必要となってしまいます。 秀丸のマクロでもなんとかなりそうな気もしますが、やはり知識のない方には難しいかもしれません。 有料ならいくつか候補があったのですが、無料だとライブラリ形式のものしかなく、やはり実装にプログラムの知識が必要なようです。 こちら有料なものはgoogleで調べればいくつかありましたので、よろしければ調べてみて下さい。

mamez31
質問者

お礼

「スクレイピング」というのですね! この作業の名前がわからずgoogleで調べてもちんぷんかんぷんでした。「スクレイピング」で調べると結構出てくるので、嬉しいです(^-^) ありがとうございます!

関連するQ&A

  • 複数のhtmlファイルをエクセルのセルに入れたい

    こちらの「http://q.hatena.ne.jp/1256199663」ような質問なのですが、 商品ページのUPをcsvファイルで一括アップロードしたいと考えています。 その際、たとえば001~010という品番の商品を登録するのであれば、それぞれの説明文などをHTMLで作成します。 (001.html,002.html~010.htmlという感じで10個のHTMLファイルを作成) その後一つ一つ開いてエクセルのセルを選択しコピペしていくのですが、この手間をうまく省けないかと思っております。 1つのエクセルファイル上で対象のセルに外部テキストファイルなどを一気に呼び込む方法などはあるのでしょうか? ちなみにRUBYの使い方は今勉強中です。 htmlはRUBYにより取得しました。 「http://okwave.jp/qa/q8084243.html」 htmlの内容はこちら↓ ======================== <dl id="ItemDetailDl" class="detailTable clearfix"> <dt id="ItemCodeDt" class="tLine">商品番号</dt> <dd id="ItemCodeDd" class="tLine">08-449-3680 (区分:2)</dd> <dt id="JanCodeDt" class="tLine">JANコード</dt> <dd id="JanCodeDd" class="tLine">4954753 032923</dd> <dt id="OriginCountryDt" class="tLine">原産国</dt> <dd id="OriginCountryDD" class="tLine">イタリア</dd> <dt id="ScientificNameDt" class="tLine">学名</dt> <dd id="ScientificNameDd" class="tLine">Citrus reticulata</dd> <dt id="ExtractionPartDt" class="tLine">抽出部位</dt> <dd id="ExtractionPartDd" class="tLine">果皮</dd> <dt id="ExtractionMethodDt" class="tLine">抽出方法</dt> <dd id="ExtractionMethodDd" class="tLine">圧搾法</dd> <dt id="UsePeriodDt" class="tLine">開封後の使用目安</dt> <dd id="UsePeriodDd" class="tLine">品質保持期限:商品に記載 開封後6ヶ月</dd> <dt id="SizeDt" class="tLine">サイズ</dt> <dd id="SizeDd" class="tLine">箱:30×30×65mm ボトル:φ22×55mm</dd> </dl> ========================

  • 特定部分のテキストを取得したい

    あるテンプレートに添って作られたページからテキストを取得するブックマークレットを作りたいのですが、 下記のような構造のページから りんご、みかん、ぶどう、部分のテキストだけ抜き出して取得するにはどうすればいいでしょうか? <h1 id="hoge">りんご</h1> ~ <span class="fuga"> <a href="test.html">みかん</a> </span> ~ <div class="piyo"> <dl class="foo"> <dt>xxx</dt><dd>ぶどう</dd> <dt>xxx</dt><dd>xxx</dd> <dt>xxx</dt><dd>xxx</dd> </dl> </div>

  • <li>の画像およびテキストリンクのランダム複数表示

    javascriptでランダム表示する方法を教えて下さい。 サイト内に商品の一覧を作成しようと考えており、それぞれの商品画像、テキストリンクをランダムで動かしたいと思っております。 商品数は10点くらいになる予定です。 <div id="sample"> <ul>  <li>   <dl>   <dt>商品1</dt>   <dd>商品画像</dd>   <dd>商品コメント</dd>   </dl>  </li>  <li>   <dl>   <dt>商品2</dt>   <dd>商品画像</dd>   <dd>商品コメント</dd>   </dl>  </li> </ul> </div> ソースはこんな感じで、10点程の掲載予定です。 <li>~~</li>リスト10点をランダム表示する javascriptを教えて下さい。 よろしくお願いいたします。

  • 複数の<option>と一致するものを表示するには

    サンプルで作ったコードは、 <select name="select1">の<option>、 <select name="select2">の<option>、 <select name="select3">の<option>で選び、その下にあるボタンを押すと、 <div class="sample_in">の<dd>タグ内と上記3つの項目に一致するにものだけを表示させたい と考え下記コードを作りました。しかし、select1とselect2は処理が行われません。 select3のみが処理されてしまいます。例えば・・・ 「1組,男子,おとなしい」を選んだ場合、サンプルでは一致するものは1つしかないので その親である<div class="sample_in">のみを表示させたいですが、 2組、女子でも表示の対象になり、一致するものが2つになってしまいます。 解決に役立つ様なプロパティやメソッドはないでしょうか。ヒントだけでもお願いします。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio … <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <title>サンプル</title> <style type="text/css"> #mainBox { width: 300px; border: 3px solid black; padding: 10px; } .sample_in { width: 250px; border: 1px solid SteelBlue; padding: 10px; margin: 20px; } .sample_in dt { color: Magenta; } </style> </head> <body> <form name="myForm" action="#"> <select name="select1"> <option value="指定なし" selected="selected">指定なし</option> <option value="1組">1組</option> <option value="2組">2組</option> <option value="3組">3組</option> </select> <select name="select2"> <option value="指定なし" selected="selected">指定なし</option> <option value="男子">男子</option> <option value="女子">女子</option> </select> <select name="select3"> <option value="指定なし" selected="selected">指定なし</option> <option value="おとなしい">おとなしい</option> <option value="活発">活発</option> <option value="普通">普通</option> </select> <input type="button" value="OK" onclick="test0()"> </form> <div id="sample"> <div class="sample_in"> <dl><dt>組名</dt><dd>2組</dd></dl> <dl><dt>性別</dt><dd>女子</dd></dl> <dl><dt>性格</dt><dd>おとなしい</dd></dl> </div> <div class="sample_in"> <dl><dt>組名</dt><dd>1組</dd></dl> <dl><dt>性別</dt><dd>女子</dd></dl> <dl><dt>性格</dt><dd>普通</dd></dl> </div> <div class="sample_in"> <dl><dt>組名</dt><dd>1組</dd></dl> <dl><dt>性別</dt><dd>男子</dd></dl> <dl><dt>性格</dt><dd>おとなしい</dd></dl> </div> <div class="sample_in"> <dl><dt>組名</dt><dd>2組</dd></dl> <dl><dt>性別</dt><dd>女子</dd></dl> <dl><dt>性格</dt><dd>活発</dd></dl> </div> <div class="sample_in"> <dl><dt>組名</dt><dd>2組</dd></dl> <dl><dt>性別</dt><dd>男子</dd></dl> <dl><dt>性格</dt><dd>活発</dd></dl> </div> <div class="sample_in"> <dl><dt>組名</dt><dd>1組</dd></dl> <dl><dt>性別</dt><dd>男子</dd></dl> <dl><dt>性格</dt><dd>普通</dd></dl> </div> </div> <script type="text/javascript"> function test0() { var div1 = document.getElementById('sample'); var div2 = div1.children; var index1 = document.myForm.select1.selectedIndex; var index2 = document.myForm.select2.selectedIndex; var index3 = document.myForm.select3.selectedIndex; var str1 = document.myForm.select1.options[index1].text; var str2 = document.myForm.select2.options[index2].text; var str3 = document.myForm.select3.options[index3].text; var ary = [str1, str2, str3]; for(m=0; m<ary.length; m++){ for(i=0, len1=div2.length; i<len1; i++){ var dd = div2[i].getElementsByTagName("dd"); for(j=0, len2=dd.length; j<len2; j++){ var ddText = dd[j].textContent; if( ary[m] == ddText ){ dd[j].parentNode.parentNode.style.display = ''; break; }else{ dd[j].parentNode.parentNode.style.display = 'none'; } } } } alert("エラーなし"); //動作確認用 } </script></body></html>

  • 画像の様なテーブルレイアウトにするには?

    画像の様なテーブルレイアウトにするにはどうすればいいのでしょうか IE9なら正しく表示されます。 何処を修正したかも教えて下さい **************index.html*********** <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" /> <title>無題ドキュメント</title> <link rel="stylesheet" type="text/css" href="css/base.css" > </head> <body> <div id="page"> <div id="header"> <p>header</p> <!-- /#header--></div> <div id="contents"> <!--メインコンテンツ(商品リスト)--> <div id="main"> <ul id="products-list"> <!-- 商品情報 --> <li class="products"> <dl> <dt><a href="#"><img src="img/1.jpg" alt="" class="product-img" /></a></dt> <dd>商品名</dd> <dd>価格:&yen;200,000</dd> <dd><a href="#">商品詳細ページ</a></dd> <dd><a href="#"><img src="cart.jpg" alt="ショッピングカート" width="" height="" /></a></dd> </dl> </li> <!-- // 商品情報 --> <!-- 商品情報 --> <li class="products"> <dl> <dt><a href="#"><img src="img/1.jpg" alt="" class="product-img" /></a></dt> <dd>商品名</dd> <dd>価格:&yen;200,000</dd> <dd><a href="#">商品詳細ページ</a></dd> <dd><a href="#"><img src="cart.jpg" alt="ショッピングカート" width="" height="" /></a></dd> </dl> </li> <!-- // 商品情報 --> <!-- 商品情報 --> <li class="products"> <dl> <dt><a href="#"><img src="img/1.jpg" alt="" class="product-img" /></a></dt> <dd>商品名</dd> <dd>価格:&yen;200,000</dd> <dd><a href="#">商品詳細ページ</a></dd> <dd><a href="#"><img src="cart.jpg" alt="ショッピングカート" width="" height="" /></a></dd> </dl> </li> <!-- // 商品情報 --> <!-- 商品情報 --> <li class="products"> <dl> <dt><a href="#"><img src="img/1.jpg" alt="" class="product-img" /></a></dt> <dd>商品名</dd> <dd>価格:&yen;200,000</dd> <dd><a href="#">商品詳細ページ</a></dd> <dd><a href="#"><img src="cart.jpg" alt="ショッピングカート" width="" height="" /></a></dd> </dl> </li> <!-- // 商品情報 --> <!-- 商品情報 --> <li class="products"> <dl> <dt><a href="#"><img src="img/1.jpg" alt="" class="product-img" /></a></dt> <dd>商品名</dd> <dd>価格:&yen;200,000</dd> <dd><a href="#">商品詳細ページ</a></dd> <dd><a href="#"><img src="cart.jpg" alt="ショッピングカート" width="" height="" /></a></dd> </dl> </li> <!-- // 商品情報 --> </ul> <!-- /#main--></div> <!--メインコンテンツ(商品リスト)--> <div id="sub"> <p>sub</p> <!-- /#sub--></div> <!-- /#contents--></div> <div id="footer"> <p>footer</p> <!-- /#footer--></div> <!--/#page --></div> </body> </html> *************base.css**************** /* CSS Document */ body{ text-align:center; } #page{ width:860px; height:600px; margin:0 auto; background:#690; text-align:left; } #header{ width:860px; height:100px; background:#D1D1DE } #contents{ width:840px; height:380px; margin:10px; padding-left:0; background:#690; } #main{ float:right; width:570px; height:380px; background:#fff; } #sub{ float:left; width:260px; height:380px; background:#fff; } #footer{ width:860px; height:100px; clear:both; background:#fff; background:#D1D1DE } .products{ list-style-type:none; float:left; width:130px; margin:10px 0px 0px 10px; padding:0px; height:170px; background:#F3F59C } .product-img{ margin:0px; padding:0px; width:50px; height:50px; text-align:center; border:none; } #products-list{ margin:0px; padding:0px; }

    • 締切済み
    • CSS
  • フォームデータの内容が確認画面で反映されません。

    フォームデータの内容が確認画面で反映されません。当方素人ですので優しくお答えいただけますと幸いです。 まず入力画面がこちら。 <dt>御社名 <span class="must">&#8251;必須</span></dt> <dd><input type="text" class="inputs" name="company_name" placeholder="例)wash life" value="<?php echo form_field["company_name"]; ?>"></dd> <dt>住所 <span class="must">&#8251;必須</span></dt> <dd><input type="text" class="inputs" name="aaa" placeholder="例)大阪市中央区" value="<?php echo $form_field["aaa"]; ?>"></dd> <dt>購入代理店名又は担当者名<span class="must">&#8251;必須</span></dt> <dd id="_field_your_name"><input type="text" class="inputs" name="your_name" value="<?php echo $form_field["your_name"]; ?>" placeholder="例)田中太郎"></dd> <dt>お名前<span class="must">&#8251;必須</span></dt> <dd id="_field_user_name"><input type="text" class="inputs" name="user_name" value="<?php echo $form_field["user_name"]; ?>" placeholder="例)山田太郎" value=""></dd> そして確認画面がこちら。 <dt>御社名</dt> <dd><?php echo h($form_field['company_name']);?></dd> <dt>住所</dt> <dd><?php echo h($form_field['aaa']);?></dd> <dt>購入代理店名又は担当者名</dt> <dd><?php echo h($form_field['your_name']);?></dd> <dt>お名前</dt> <dd><?php echo h($form_field['user_name']);?></dd> 御社名とお名前は入力した文字が確認画面で反映されるのですが、他の2つは反映されません。 どなたかよろしくお願いいたします。

    • 締切済み
    • PHP
  • htmlとcssについて

    input typeのテキストと文字を左揃えで表示したいのですが、cssをどのようにすればいいのでしょう?? 普通の状態だと、 ID    「文字入力欄」 のように入力欄の左横に空白ができてしまいます。 <dt>ID</dt> <dd> <input type="text" name="id" size="35" maxlength="50" class="style_1" /> </dd>

    • ベストアンサー
    • HTML
  • ジャンプ先を開く方法

    こんにちは、 折りたたみ機能を使っている <dt id="top">トップ</dt>に 別ページから http://localhost/asel/#top で飛んできた場合、自動的に開くようにしたいのですが、 どのようにすればよいのでしょうか? html------------------- <dl class="accordion"> <dt id="top">トップ</dt> <dd> <h4>カテゴリ1</h4> <ul> <li>攻略編</li> </ul> </dd> </dl> 折りたたみコード-------------------- $(function(){ $('dl.accordion>dd').hide(); $('dl.accordion>dt.opened').nextUntil('dl.accordion>dt').show('slow'); $('dl.accordion>dt').click(function(e) { $(this).toggleClass('opened'); $(this).nextUntil('dl.accordion>dt').toggle('slow'); }); });

  • 角丸教えてください。

    HTMLを勉強しています。 下記にソースに丸みを帯びたセルをつけたいのですが わかりません。 わかりやすくおしえていだけないでしょうか? よろしくお願いいたします。 HTML <div class="item-group"> <h3><img src="URL" alt="商品別検索" /><p> </p><td height="400" bgcolor="#c0c0c0"> </h3> <dl> <dt>▼test</dt> <dd><a href="http://URL">・てすと</a></dd> <dd><a href="http://">・★★★</a></dd> <dt>▼test</dt> <dd><a href="http://">・★★★</a></dd> <dd><a href="http://">・★★★</a></dd> <dd><a href="http://">・★★★</a></dd> <dd><a href="http://">・★★★</a></dd> <dt>▼作成中</dt> <dd><a href="http://">・★★★</a></dd> <dd><a href="http://">・★★★</a></dd> <dd><a href="http://">・★★★</a></dd> <dt>▼作成中</dt> <dd><a href="http://">・★★★</a></dd> <dd><a href="http://">・★★★</a></dd> <dd><a href="http://">・★★★</a></dd> <dd><p><a href="http://★★★/">商品一覧</a></p></dd> </dl> </div> になります

    • ベストアンサー
    • HTML
  • wordpress 検索フォームと結果を同ページで

    wordpressで検索フォームと検索結果を作成しています。 検索フォームは <form action="<?php echo home_url(); ?>" method="get"> <dl> <dt> お部屋のタイプ</dt> <dd> <?php wp_dropdown_categories(array( 'show_option_all' => '全てのタイプ' )); ?></dd> <dt> こだわり検索</dt> <dd> <?php $terms = get_terms('good'); foreach ($terms as $term): ?> <label> <input type="radio" name="good" value="<?php echo esc_attr($term->slug); ?>"> <?php echo esc_html($term->name); ?></label> <?php endforeach; ?> </select> </dd> <dt> キーワード</dt> <dd> <input type="text" value="" name="s" /> </dd> </dl> <input type="submit" value="この内容で検索!" /> </form> としています。 検索結果は「search.php」を作り <div id="wrapper"> <h4 class="h4_search">★検索結果</h4> <div id="content"> <section> <?php if (is_search()) : ?> <?php endif; ?> <?php if (have_posts()) :?> <div class="postWrap"> <?php while (have_posts()) : the_post(); ?> <article id="post-<?php the_ID(); ?>"> <div class="search"> <header> <h5><a href="<?php the_permalink(); ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><span><?php the_title(); ?></span></a></h5> <a href="<?php the_permalink(); ?>"> <?php the_post_thumbnail(); ?></a> <?php echo mb_substr(get_the_excerpt(),0, 50);?> <a href="<?php the_permalink();?>">&emsp;…&nbsp;続きを読む</a> </header> </div> <?php endwhile; ?> </div> <?php endif; ?> としています。 このままでは、検索フォームのあるページから別のページ(search.php)に飛んで検索結果が出ます。 ここで、検索結果を検索フォームのあるページ内で表示したいと思っております。 検索フォームに入力し、submitボタンを押すと、そのすぐ下に検索結果がずらりと表示できるようにしたいです。 このようなことは可能でしょうか? できればプラグインを使わずに実現したいので、コードを教えていただければ有難いです。 何卒よろしくお願いします。

    • ベストアンサー
    • PHP