一括でHTMLの商品名をタイトルに移動する便利な方法はありますか?

このQ&Aのポイント
  • ネットショップで多数の商品を扱っている場合、商品名をHTMLのタイトルに自動的に移動させる方法はありますか?手作業では時間がかかるため、便利なソフトや方法が知りたいです。
  • タイトルの行数や商品名の記述行数は全ページ共通です。手作業で単純な作業ですが、5000個の商品を処理するには手間がかかります。一括で特定の位置の語句を特定の位置に移動できるソフトや方法があれば教えてください。
  • HTMLソースの特定の行に記述がある商品名を、HTMLのタイトルに移動する便利な方法を探しています。ネットショップを運営しており、5000個の商品を扱っているため、一つ一つのページを手作業で編集するのは困難です。おすすめのソフトや方法があれば教えてください。
回答を見る
  • ベストアンサー

一括でHTMLを置換・移動させるソフトってありますか?

HTMLソースの、特定の行に記述がある「文字」(商品名)をHTMLのタイトル<TITLE>●●</TITLE>の部分に移動させる便利な方法はありませんでしょうか? ネットショップを運営しており、商品数が5000個ほどあります。 1ページに1商品の作りでページを作っており、そのページのタイトルに、商品名を入れたいと考えました。 しかし、それを一つ一つ行っていたら膨大な時間がかかるので、何か便利なソフトがないかと思いご相談させていただきました。 タイトルの行数、商品名の記述がある行数は、全ページ共通です。手作業でやれば、それほど難しい作業ではなく、商品名のところをコピーして、<TITLE>●●</TITLE>の●●の部分に貼り付けていくだけの単純作業です。 置き換えソフトなども考え、いろいろ考えましたが、ギブアップしました。 一括で、特定の位置にある語句を、特定の位置に移動できるソフト、もしくは方法があるようでしたら、教えてください。 よろしくお願いします。

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

  • ベストアンサー
回答No.5

気に入らなかったので作り直しました。 #3、#4の回答はなかったことにしてください。 ○ 動作環境&前提条件 ・Windows2000 or WindowsXP ・HTML の文字コードは SJIS であること ・HTML中【商品名】の存在する行は10行目であるとする。  実際には10行目でなかった場合は exesed1.bat を修正してください。 ・コマンドラインから実行します。 ○ 事前準備 1) 以下から sed プログラムをダウンロードし sed.exe を system32 フォルダにコピーする http://www.vector.co.jp/soft/win95/util/se015016.html 2) 念のため元 html は全部バックアップしておく 3) 次のバッチファイルを作成しておき、コピーしたhtmlファイルがある作業フォルダに保存する。 ・exesed1.bat echo %1.html>> %2 sed -e "10 {" -e "s/[^&]*&nbsp;\([^<]*\)\(<.*\)/\1/" -e "p" -e "}" -e "d" %1.html >> %2 ★商品名が例えば 20行目に存在するのなら 10 と書いてあるところを 20 に変更してください。 4) 次のスクリプトファイルを作成し上記と同じ作業フォルダに保存する。 ・make_replace.sed N s/\n/ / s/\([^ ]*\) \(.*\)/sed "s\/<TITLE>.*<\\\/TITLE>\/<TITLE>\2<\\\/TITLE>\/" \1 > newpage\\\1/ p d ○ 作業開始 1) コマンドプロンプトから 作業用html のあるディレクトリに移動する 2) 置換作成するページを保存するディレクトリ newpage をその作業ディレクトリ配下に作成する 3) 対象ファイル一覧を作成 dir *.html > work1.txt 4) 対象ファイル名だけの一覧を以下のコマンドで整形 sed "s/.\{39\}//" work1.txt > work2.txt 5) 対象ファイル一覧を整形 上下に存在するファイル名と関係ない行を削除 6) ページ名、商品名を抜き出すバッチファイルを作成 echo del page_shohinmei.txt > make_page_shohin.bat sed "s/\(.*\)\.html/cmd \/c exesed1 \1 page_shohinmei\.txt/" work2.txt >> make_page_shohin.bat 7) ページ名、商品名抽出バッチファイルを実行 make_page_shohin.bat ページ名A 商品名A ページ名B 商品名B という形式のファイル(page_shohinmei.txt)が作成されているはず。 8) 置換を実行するバッチファイルを作成する sed -f make_replace.sed page_shohinmei.txt > replace.bat それらしい感じのバッチファイルが生成されていることを確認する。 9) 置換実行バッチファイルを実行する replace.bat 10) newpage というフォルダに同名の置換されたファイルができているはず。

pirokore
質問者

補足

大変ご丁寧な回答ありがとうございます。2時間もお時間を掛けて頂き、感謝感激です。ご指導いただいたとおり、まずやってみます。できましたら、こちらでまたご連絡します。取り急ぎ、お礼までに。

その他の回答 (4)

回答No.4

書き込んだら妙な形に変換されちゃっています。(^^; exesed1.bat はこちらに変更してください。 ・exesed1.bat sed "1,9d" %1.html | sed "2,10000d" | sed "s/[^&]*&nbsp;\([^<]*\)\(<.*\)/\1/" >> %2 ★商品名が例えば 20行目に存在するのなら 1,9 ではなく 1,19 に変更してください。

回答No.3

面白そうなので参戦します。 sed(ストリームエディタ)使えばできそうです。 というか簡単そうだと思ったので試しにやってみたら2時間ぐらいかかってしまった…(^^;<TITLE>●●</TITLE>の部分を全部同一に変えるのなら本当に簡単にできてしまいますが、今回はページごとに違うわけなので、その辺が難しいですね。 以下の手順をよどみなくやれば作業自体は5分もあればできるでしょう。 5000ファイルぐらいなら楽勝だと思います。 ○ 動作環境&前提条件 ・Windows2000 or WindowsXP ・HTML の文字コードは SJIS であること ・HTML は 10000 行以下とする。 ・ファイル拡張子は html を想定しています。 ・HTML中【商品名】の存在する行は10行目であるとする。  10行目でなかった場合は exesed1.bat を修正してください。 ・コマンドラインから実行します。 ○ 事前準備 1) 以下から sed プログラムをダウンロードし sed.exe を system32 フォルダにコピーする http://www.vector.co.jp/soft/win95/util/se015016.html 2) Microsoft Excel を使えるようにしておくこと 3) 念のため元 html は全部バックアップしておく 作業用のフォルダに全部の html をコピーする。 ディレクトリ階層は考慮してません。 4) 次のバッチファイルを作成しておき html ファイルがあるディレクトリに保存する。 ・exesed1.bat sed "1,9d" %1.html | sed "2,10000d" | sed "s/[^&]* \([^<]*\)\(<.*\)/\1/" >> %2 ★商品名が例えば 20行目に存在するのなら 1,9 ではなく 1,19 に変更してください。 ・exesed2.bat sed "s/<TITLE>.*<\/TITLE>/<TITLE>%2<\/TITLE>/" %1 > newpage\%1 ○ 作業開始 1) コマンドプロンプトから 作業用 html のあるディレクトリに移動する 2) 置換作成するページを保存するディレクトリ newpage を作成する 3) 対象ファイル一覧を作成 dir *.html > work1.txt 4) 対象ファイル一覧を整形 ファイル名と関係ない行を削除 5) 対象ファイル名だけの一覧を以下のコマンドで整形 sed "s/.\{39\}//" work1.txt > work2.txt work2.txt に正しくファイル名のみが保存されているか確認する。 6) 商品名だけを抜き出すバッチファイルを作成 echo del shohinmei.txt > makeshohin.bat sed "s/\(.*\)\.html/cmd \/c exesed1 \1 shohinmei\.txt/" work2.txt >> makeshohin.bat 7) 商品名抽出バッチファイルを実行 makeshohin.bat これを実行すれば、商品名のみ抜き出したファイル shohinmei.txt というのが作成されているはず 8) html ファイルと 商品名の対応情報を作成する ・エクセルで新規シート作成 work2.txt をエディタで開きA列に貼り付け ・同様に shohinmei.txt を開きB列に貼り付け ・データの存在する行を選択コピーしエディタに貼り付け page_shohin.csv という名称のCSV形式で保存する。 7) 置換を実行するバッチファイルを作成する echo rem start > replace.bat sed "s/\([^,]*\),\(.*\)/cmd \/c exesed2 \1 \2/" page_shohin.csv >> replace.bat 8) 置換実行バッチファイルを実行する replace.bat 9) newpage というフォルダに同名の置換されたファイルができているはず。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

とりあえず、サンプルで1ページを補足したりはできますか

pirokore
質問者

補足

<HTML> <HEAD> <TITLE>■■■■■■■</TITLE> ↓ ↓中略 ↓ <TD><B><FONT size="-1">商品名:</FONT></B></TD> <TD><FONT size="-1" color="#666666">&nbsp;●●●●●●</FONT></TD> ※●●の部分を■■のところに書き写したいと考えています。

回答No.1

それ専門のソフトというのはないと思う(需要がないので)ので自分で作るのが早いかなと思います。 「なでしこ」というソフトがあるのですがこれを使えばカンタンにプログラミングしてソフトを作ることができます。 このソフトのいいところは日本語でプログラミングできることです。 サンプルをくれれば私が作ってもいいですがメールアドレスとか書けないみたいなので^^;

pirokore
質問者

お礼

回答ありがとうございました。やはり難しいそうですね。「なでしこ」というソフトの存在を初めて知りました。さっそくマニュアル的な書籍も購入し、挑戦してみようと思います。ぜひサンプルをお送りしたいのですが連絡の手段がないようです。残念です(T_T)

関連するQ&A

  • HTML内の文章を一括で修正するソフトはありますか?

    ホームページビルダーでHPを作っています。 各ページのHTMLの中にある文字列(例:「あああ」を『あああ』に直したいのですが、ページ中だけでなく、ページタイトルの部分も変更する必要がありサイト機能を使っても思うように修正できません。 これはもうビルダーでは不可能だと思います。 何か、良いフリーソフトは無いものでしょうか? もしご存知でしたら、宜しくお願いします。

  • (HTMLファイル)テキストの一括変換できるソフト知りませんか?

    会社のWEBページ更新をやっているのですが、テキストのコピーライトの一部分を(「2004」を「2005」に変換などといった作業)一括で変更できるフリーソフトをご存知ではありませんか?シェアウェアでも、便利なものがあれば、教えてください。

  • 複数のHTML&テキストファイルを一括修正したい。

    mac(OS X 10.4, Intel)で複数のHTMLデータの特定の部分(HTMLとテキスト)を一括して修正できるソフトはないものでしょうか? HTMLファイルがページ数の分だけあり、一つずつを手打ちで修正するのは非常に時間がかかります。 よろしくお願いいたします。

    • 締切済み
    • Mac
  • HTML・ソース置換方法について質問致します。

    HTML・ソース置換方法について質問致します。 現在、あるショッピングサイトを運営しているクライアント様から、 新たに楽天にてサイトを立ち上げたいとの依頼がありました。 現行のサイトのページを使い、楽天用にソースを置換して、 出来るだけ現行の内容を流用したページを作りたいのですが、 そういった作業の際に便利な置換ソフト等ございましたら、 教えてください。 宜しくお願い致します。

  • 大量のHTMLファイルのソースを一括置したいです。

    商品ごとの大量のHTMLファイル(5000ページほど)がありますが、 大量の商品の価格変更があり、一括で変換できるソフトを探しております。 置換えしたい内容はCSVであります。 ringo.html 100円→150円 mikan.html 200円→250円 suika.html 300円→200円 ・ ・ ・ のように置換したいものが数千個あります。 私がもっている一括置換えソフトは大量のHTMLファイルから特定の文字を探して AはBに置換する。というものですが 私がやりたいのは 大量のHTMLからAはBにCはDにEはFにといった具合で大量の置換項目を一括で置換したいのです。 どなたかこのようなソフトをご存知の方いらっしゃいませんでしょうか? よろしくお願いいたします。 ※各商品のページが5000ページほどあります。 ※価格変更が2000個ほどあります。

  • HTMLのみを一括保存できるソフト

    HPをIEの「名前を付けて保存」の「Webページ、HTMLのみ」で保存することが多いのですが、複数HPをその状態で一括保存出来るようなフリーソフトはないでしょうか? 保存名が後々識別しにくいもの(ただ単に数字とか‥)で保存されるものはよく見るのですが‥。 宜しくお願いします。ちなみにWindowsMeです。

  • HTMLのパス記述を一括変更出来るソフト

    お世話になります。 サイト内でHTMLファイルを他のフォルダに移動させた時はパスが変わりますが、そのファイルにリンクを貼っているサイト内ファイルすべてのパス記述を一括で変えるフリーソフトを探しています。 ご存知でしたら教えて下さい。

  • HTML CSSでできたページ簡単に更新

    HTML CSSでできたページをCSVなどで簡単に変更す方法はありますか? 会社でWEBサイトの更新担当をしています。 ルーチン業務でwebサイトを更新する作業がありますが、もっと簡略化したいと思っています サイトの仕様は以下です。 ■ECサイト ■サイトはphpでできています。 ■更新するのはHTML部分で<table>でできています。 (*画像参照) 商品の入れ替えを行うのでイチイチ商品名などを書き換えるのが面倒です。 また、スマートフォン用のページもあり、スマートフォンは10個商品を並べると次のページに移動させなければなりません。 業務が増えてきたため、この更新作業を簡略化したいと思っています。 csvにはこだわっておらず、うちのサイトはショッピングサーチにも出店しており、ショッピングサーチはcsvを編集してサーバーにアップしたら自動的にwebページに商品が反映される使用なので、そのようなことができないかなと思ったためです。 初心者で素人ですがどうぞ教えてください。  

    • ベストアンサー
    • PHP
  • HTML一括変更

    自分はHTMLを作成しているものです。 今、作っているサイトの内容を一括変更したいのですが、いちいち一つずつのHTMLファイルのソースを書き換えるのは手間がかかるので、便利なフリーソフト、又はエクセルなどで出来るのなら、その方法を教えていただきたいです!! 例えば、a1.html a2.html a3.html のHTMLファイルのソースコードの、<a href="top-page.html"></a>という3つのファイルに見られる、共通部分の、top-pageをmailなどに一括で変更したいのです。ファイル数が膨大なので、是非教えていただくと助かります!!

  • HTMLの特別な記述方法について

    はじめまして。 HTMLの記述方法について教えてください。 たとえば、Aというページにwww.aaa.comのリンクが張られていたとして、このリンクをたどってwww.aaa.comに来た人に対してだけ、特定の動作をさせるようなHTMLの記述をする方法はないでしょうか? 以上よろしくお願いいたします。

    • ベストアンサー
    • HTML

専門家に質問してみよう