トップページ⇒tech
103コメント31KB

mht←→html 変換

■ このスレッドは過去ログ倉庫に格納されています
0001ペンネームMHTさんNGNG
.mht(WEBアーカイブ)と.htmlを相互変換出来るプログラムって無いでしょうか?
特定のフォルダ以下の大量の.htmlを→.mhtにしたりしたり、
検索用には→.htmlにしたりを自動処理したいんで、
出来ればCUIプログラムでそういうのがあれば良いんですが…
結構探したんですが見つかりません。

inetcomm.dllあたりを使って出来ないものかな?
0002デフォルトの名無しさんNGNG
>>1
質問スレで聞けこのカス
0003デフォルトの名無しさんNGNG
>>1
うんこ
0004ペンネームMHTさんNGNG
>>2-3
分からないならレスするなよ低脳
0005デフォルトの名無しさんNGNG
        まもなくここは 乂>>1騙り合戦場乂 となります。

      \∧_ヘ     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ,,、,、,,, / \〇ノゝ∩ < >>1騙り合戦、いくぞゴルァ!!       ,,、,、,,,
    /三√ ゚Д゚) /   \____________  ,,、,、,,,
     /三/| ゚U゚|\      ,,、,、,,,                       ,,、,、,,,
 ,,、,、,,, U (:::::::::::)  ,,、,、,,,         \オーーーーーーーッ!!/
      //三/|三|\     ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ∪  ∪       (    )    (     )   (    )    )
 ,,、,、,,,       ,,、,、,,,  ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ,,、,、,,,       (    )    (    )    (    )    (    )
0006デフォルトの名無しさんNGNG
RFC 2110を読んで自分で作れば〜?
perl使えば簡単に作れそう。
                                                 単発質問スレ良くない。
0007デフォルトの名無しさんNGNG
>>4
>あらゆる質問はまずすれ立てるまでもない質問はここでスレにしてください。
注意書きも読めないのかよ。
この超スーパースペシャルウルトラミラクルマッハ低脳。
0008デフォルトの名無しさんNGNG
うるせ〜馬鹿
0009デフォルトの名無しさんNGNG
       人
      (_)
      (___)
     (,,・Д・) <ウンコキターーー!!!
      ( O┬O
  ≡ ◎-ヽJ┴◎  キコキコ
0010ペンネームMHTさんNGNG
4は偽物。(煽って楽しい?)
建設的な意見求む…

あと、perlモジュールでも、そういうのはどうしても見つからなかった
需要は大きいと思うし、まだ解決していない所を見ると
問題の重要性は大きいのでは?
これだけでレス上げる価値はあると思うんですが…
0011デフォルトの名無しさんNGNG
mhtってなに?
0012デフォルトの名無しさんNGNG
>>11
MIME使って、1ページのhtmlとそこで使われる画像ファイルを、
まとめてひとつのファイル (*.mht) にしちゃうの。

IEなら、「ファイル」「名前を付けて保存」「Webアーカイブ、単一のファイル (*.mht)」
0013デフォルトの名無しさんNGNG
RFCに有ったのか。
Mozillaも早く実装しろ。
0014デフォルトの名無しさんNGNG
サイト内容の整理ならInternet Ninja使えばいいじゃん
0015デフォルトの名無しさんNGNG
VBでコントロール使ってできない?

mht読ませてhtmlではいたりとか
0016デフォルトの名無しさんNGNG
>>12
IEでできるならIEコンポーネント使ってできんの?
そういうインタフェースないの?
0017デフォルトの名無しさんNGNG
MHTGenerator
0018デフォルトの名無しさんNGNG
>>10
だから単発質問スレ止めろっての。
0019デフォルトの名無しさんNGNG
未解決上げ
0020デフォルトの名無しさんNGNG
上級 第1位 熾天使:セラフ (Seraph: 複数形 Seraphim)
    第2位 智天使:ケルブ (Cherub: 複数形 Cherubim)
    第3位 座天使:ソロネ (Throne)
中級 第1位 主天使:ドミニオン (Dominion)
    第2位 力天使:ヴァーチャー (Virtue)
    第3位 能天使:パワー (Power)
下級 第1位 権天使:プリンシパリティー (Principality)
    第2位 大天使:アークエンジェル (Archangel)
    第3位 天  使:エンジェル (Angel)
0021デフォルトの名無しさんNGNG
>>20
良いこと聞いた
0022デフォルトの名無しさんNGNG
ソロネから下の複数形は?
0023デフォルトの名無しさんNGNG
ねーのか・・結局。
0024デフォルトの名無しさんNGNG
>>1
それだったら、3時間くらいで作れる。
002524NGNG
すまんmhtは知らん。
0026デフォルトの名無しさんNGNG
多分ソロネとプリンシパリティー以外はSつければいい気がする

(ソロネーズ?)
ドミニオンズDominion's
ヴァーチャーズVirtue's
パワーズPower's
(プリンシパリティーズ?)
アークエンジェルス Archangel's
エンジェルスAngel's
0027デフォルトの名無しさんNGNG
>>26
英語読みではthrones(スローンズ)だがな
0028デフォルトの名無しさんNGNG

MAC用のフリーウエアで変換ソフトあったっけ。
winにはないんだw
さすがだねw
0029デフォルトの名無しさんNGNG
>>28
OSに標準でついてるし<IE
0030デフォルトの名無しさんNGNG
                | ̄``''- 、
                |      `゙''ー- 、  ________
                |    ,. -‐ ''´ ̄ ̄`ヽ、_        /
                |, - '´ ̄              `ヽ、     /
              /               `ヽ、ヽ   /
             _/                    ヽヽ/
           / / /   /  /  /            ヽハ
          く  / /!   |   〃 _/__ l|   | |   |  |  | | ||ヽ
           \l// / |  /|'´ ∧  ||   | |ー、||  |  | l | ヽ
            /ハ/ |  | ヽ/ ヽ | ヽ  | || /|ヽ/!  |/ | ヽ
            / |  ||ヽ { ,r===、   \| _!V |// //  .!   |
            | ||   |l |ヽ!'´ ̄`゙   ,  ==ミ、 /イ川  |─┘
            | ハ||  || | """ ┌---┐  `  / //  |
            V !ヽ ト! ヽ、    |     !    / //| /
               ヽ! \ハ` 、 ヽ、__ノ    ,.イ/ // | /
    ┌/)/)/)/)/)/)/)/)/)/)lー/ ` ー‐┬ '´ レ//l/ |/
    |(/(/(/(/(/(/(/(/(/(/│||      | \  〃
  r'´ ̄ヽ            | |.ト     /  \
  /  ̄`ア             | | |  ⌒/     入
  〉  ̄二) 知ってるが    | | |  /     // ヽ
 〈!   ,. -'               | | ヽ∠-----', '´    ',
  | \| |   お前の態度が  | |<二Z二 ̄  /     ',
  |   | |               _r'---|  [ ``ヽ、      ',
  |   | |   気にいらない >-、__    [    ヽ      !
  \.| l.              ヽ、      [     ヽ    |
    ヽ|              \    r'       ヽ、    |
0031デフォルトの名無しさんNGNG
mhtの分解なら自在眼でできるけど
逆は知らん。
0032デフォルトの名無しさんNGNG
Windows2000以上にはMIMEを扱うためのActiveXオブジェクトが既に入っているので
バラすのも固めるのも自由自在
0033デフォルトの名無しさんNGNG
VBSでIEぶん回せばおわりじゃん
0034デフォルトの名無しさんNGNG
>>33
確かにそうだが
センスのないやり方だよ
0035デフォルトの名無しさんNGNG
別にカプセル化しとけばいいじゃん

あとで暇になったらセンスのあるやり方と差し替えろ
0036デフォルトの名無しさんNGNG
カプセル化?
オブジェクト指向最近覚えたばっかりっぽいな
003733NGNG
>>34
だったら自分で書けばいいじゃん。
わざわざスレを立てるような話だとはとうてい思えない。
0038デフォルトの名無しさんNGNG
>>36
別に言い方はなんでもいいよ。

まず変換するっつー仕様を満たすのが先決
0039デフォルトの名無しさんNGNG
じゃあ聞くけど

mhtの中身覗いてみた?
覗けばわかるよ。バイナリファイルじゃないんだよコレが
base64エンコーディングさえ理解してもらえば誰でもいけるし
どんな言語でもOK
0040デフォルトの名無しさんNGNG
>>36
カプセル化はオブジェクト指向の概念じゃありませんよ
0041デフォルトの名無しさんNGNG
>>40

俺にそんなコトいわれてもな

おれは
>カプセル化はオブジェクト指向の概念
なんて言ってない

「カプセル化」なんて言葉がいまさら出てくるやつはオブジェクト指向覚えたてか?と考えただけだ
0042デフォルトの名無しさんNGNG
話の流れで自然に出てきた「カプセル化」なんて言葉に敏感に反応するやつはオブジェクト指向覚えたてか?
0043デフォルトの名無しさんNGNG
>>42
何が、くやしいのだ?
0044デフォルトの名無しさんNGNG
( ´,_ゝ`)
0045デフォルトの名無しさんNGNG
>>39
別に言語はなんでもいいよ。

まず変換するっつー仕様を満たすのが先決
0046デフォルトの名無しさんNGNG
>>45
何を偉そうにしてるんだ?
だから、mhtの中身見たのかよ
単なるテキストファイルだよ
面白そうなのでやってはみるが
完成までに来週まで待て
今日が土曜日だったらよかったんだけどな
0047デフォルトの名無しさんNGNG
>>46
別に偉くなくてもいいよ
0048デフォルトの名無しさんNGNG
ようやくSEXまでこじつけた女が
マンコ臭かったら腹立ちませんか?
もう悔しくて悔しくて
0049デフォルトの名無しさんNGNG
>>48
別にクンニしなくてもいいよ。

まず挿入するっつー征服欲を満たすのが先決
0050デフォルトの名無しさんNGNG
>>49
お前ホントにわかっているのか?
臭いコーマンっていう奴を・・・

洗っても指の臭い2〜3日取れないんだぜ
挿入してピストン運動していても
その風でにおいが舞い上がって俺の鼻をくすぐるだけでもういや
この女のコーマンにパンチしたい

0051デフォルトの名無しさんNGNG
>>48
一緒に風呂入って洗ってやれ
0052デフォルトの名無しさんNGNG
>>51
だから根本的にわかってないな

あのな、洗ってない臭さじゃないんだよ

いわゆるクサマンというのは体臭と同じようなもので

できるかどうか知らんが治療しないと直らないレベルなのよ

においだって、ホント半端じゃないぜ
0053デフォルトの名無しさんNGNG
野菜食え
0054デフォルトの名無しさんNGNG
なんでこのスレでマンコの臭さを訴える?
0055デフォルトの名無しさんNGNG
.       ∧_∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
       ( ・∀・)< ちわー軽急便で〜す。
  -=≡  /    ヽ  \_____________
.      /| |   |. |      ) )
 -=≡ /. \ヽ/\\_  / ̄ ̄ ̄ヽ
    /    ヽ⌒)==ヽ_)= | (\/) |
-=   / /⌒\.\ ||  ||  |  > <  |
  / /    > ) ||   ||  | (/\). |
 / /     / /_||_ || ヽ___/
 し'     (_つ ̄(_)) ̄ (.)) ̄ (_)) ̄(.))
0056デフォルトの名無しさんNGNG
ie なんて使わないからイラナイ。
0057デフォルトの名無しさんNGNG
>>39
base64じゃねーよアホか・・・
>>46
ふいてんじゃねーよ、こいつら・・・
0058デフォルトの名無しさんNGNG
話の流れで自然に出てきた「カプセル化」なんて言葉に敏感に反応するやつはオブジェクト指向覚えたてか?
0059デフォルトの名無しさんNGNG
MHTを分解・その1

#!/usr/bin/env python
import sys, os, email

def m2h(src, prefix='mesg'):
    root = email.message_from_file(src)
    n = 0
    table = {}

    for mesg in root.walk():
        if mesg.get_content_maintype() == 'multipart':
            continue
        n += 1
        filename = '%s-%04d-%s.%s' % (prefix, n,
                   mesg.get_content_maintype(), mesg.get_content_subtype())
        location = mesg.get('Content-Location', filename)
        table[location] = filename
        print location, '->', filename

    src.seek(0)
    root = email.message_from_file(src)
    n = 0
    for mesg in root.walk():
        if mesg.get_content_maintype() == 'multipart':
            continue
        n += 1
        payload = mesg.get_payload()
0060デフォルトの名無しさんNGNG
MHTを分解・その2

        if mesg.get('Content-Transfer-Encoding') == 'base64':
            payload = payload.decode('base64')
        elif mesg.get('Content-Transfer-Encoding') == 'quoted-printable':
            payload = payload.decode('quoted-printable')
        for url in table:
            payload = payload.replace(url, table[url])
        dst = file(table[mesg.get('Content-Location')], 'w')
        dst.write(payload)
        dst.close()

def main():
    if len(sys.argv) >= 1:
        for filename in sys.argv[1:]:
            if not os.path.exists(filename):
                sys.stderr.write('no such file: %s\n' % filename)
                continue
            prefix = os.path.splitext(os.path.basename(filename))[0]
            m2h(file(filename), prefix)

if __name__ == '__main__':
    main()

(おしまい)
0061デフォルトの名無しさんNGNG
>>60
GIF、JPEGなどのデータが壊れてしまうので、
dst = file(table[mesg.get('Content-Location')], 'w')
という行を、
dst = file(table[mesg.get('Content-Location')], 'wb')
のように、バイナリモードでオープンする様に、修正してください。
0062デフォルトの名無しさんNGNG
↑じゃ無理だろ・・
大体、html→mhtはどうする?
0063デフォルトの名無しさんNGNG
クソスレは、下げましょうね。
0064デフォルトの名無しさんNGNG
結局無理…?
0065デフォルトの名無しさんNGNG
>>50
すごいなー。
そんなにすごい女がこの世に存在するとは知らんかった。
作り話と違うよなー?
0066デフォルトの名無しさんNGNG
57 名前:デフォルトの名無しさん 投稿日:03/10/09 17:56
>>39
base64じゃねーよアホか・・・
>>46
ふいてんじゃねーよ、こいつら・・・

↑はぁ?はぁ?はぁ?
お前が吹いてんだろ?
見たのか?mhtファイルをよ!
テキストエディタで覗けよ。
base64に決まってんじゃん↓
画像ファイルは全部こうなってんだよ。

From: <Microsoft Internet Explorer 5 で保存する>
Subject: =?iso-2022-jp?B?GsysRCdRj+AsyaEJndQTQf9OtBsjoQg==?=
Date: Thu, 6 Nov 2003 16:53:37 +0900
MIME-Version: 1.0
Content-Type: multipart/related;
boundary="----=_NextPart_000_0000_01C3A486.85DB98C0";
type="multipart/alternative"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01C3A486.85DB98C0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://defs.cams-nas.com/hgmo/002.jpg
0067デフォルトの名無しさんNGNG
もっとテンションあげていきましょう>ALL
0068デフォルトの名無しさんNGNG
sage
0069デフォルトの名無しさんNGNG
ほしゅぴたる
0070デフォルトの名無しさんNGNG
IE6にはない、mht保存
0071デフォルトの名無しさんNGNG
モジラに実装できないの?
0072fujiansanNGNG
能書きたれてるヤツは、
->mhtのスクリプトだか何だかを早くここへ書け。
私は結果を利用させてもらいます。
変換ロジックを書いてください。
0073fujiansanNGNG
若しくはBASE64で書け
0074デフォルトの名無しさんNGNG
HTMLを 表示しろ
MHTで 保存しろ
0075fujiansanNGNG
やだよ
0076デフォルトの名無しさんNGNG
mhtに変換してもIEでしかみれないじゃん。それで満足なのか?
0077デフォルトの名無しさんNGNG
IE以外でも見られるが、仮にIEだけだとしてもRFCに載ってるんだから今後増えるだろ。。
0078デフォルトの名無しさんNGNG
>>77
「RFCに載ってるんだから」は根拠として薄いのではないかと。
0079デフォルトの名無しさんNGNG
Safariの次のバージョンで、保存形式に「Webアーカイブ」が選べるらしいね。
フォーマットは何なんだろう。
0080デフォルトの名無しさんNGNG
Outlook Express をインストールしていないと保存できにゃい…
裏技アンインストールを使って削除した場合ももちろん保存できず。
つまり、OEが必要ってことなのか…?
0081デフォルトの名無しさんNGNG
age
0082デフォルトの名無しさんNGNG
>>77
IE以外って何か教えろハゲ。肝心なところをごまかすんじゃねえ
0083デフォルトの名無しさんNGNG
良く解りませんが、置いていきますね

ttp://delphi.about.com/library/weekly/aa062904a.htm

ttp://www.spidersoft.com/winmht/default.asp

ttp://www.sycory.com/mht_quick_saver.htm
0084デフォルトの名無しさんNGNG
>>17
ttp://www.gir-lab.com/pukiwiki/pukiwiki.php?MHT%20Generator
0085デフォルトの名無しさんNGNG
まぁ結局あれだ
ビッグマウスしかいなかったってことか
0086デフォルトの名無しさんNGNG
テンジクネズミとか?
0087デフォルトの名無しさんNGNG
まぁ結局あれだ
ビッグマウスしかいなかったってことか
0088デフォルトの名無しさんNGNG
html/jpeg/gif -> mht については ttp://www.gir-lab.com/ にあるソースでなんとなくわかったのですが、
Flash(*.swf)や動画(*.mpg , *.wmv) を mht に含めてしまうことはできないのでしょうか?
0089デフォルトの名無しさんNGNG
メールの添付ファイルと同じような状態になるだけなので、
どんなフォーマットであろうと含めるだけならいくらでも出来る。
009088NGNG
>>89
レスありがとうございます!
IEの ファイル->名前を付けて保存->*.mht での保存だと、表示させているWebページ内のJPEGやテキストは*.mhtに含まれるのですがFlashは保存されないのです。
自分でswf2mhtみたいなのを作らないとダメなんでしょうか?
もしくはすでに先人が作っていればご紹介いただけませんでしょうか?

009188NGNG
連投すいません。いろいろグーグルで検索してみまして、
ttp://www.goupsoft.com/
が販売している'EzSaveMHT3.0'がFlash埋め込みのWebページをMHT保存できるということで購入しました。
早速Flashを埋め込んでいるページをMHTで保存してみましたところ、確かにMHTできたのですが、
その保存したMHTをIEで開くとグチャグチャの文字列が表示されるだけで正しくFlashが表示されません(TT)あうぅ…なぜ?
0092デフォルトの名無しさんNGNG
単にIEが対応していないから。
それ以上でもそれ以下でもない。
疑問の余地など微塵もない。
009388NGNG
>>92
生成したMHTファイル(↓)からIEがswfを再構成できてないという事?


From: <Save By EZ Save MHT at http://www.goupsoft.com>;
Subject:
Date: Wed, 8 Dec 2004 16:16:06 +0900
MIME-Version: 1.0
Content-Type: multipart/related;
boundary="----=_NextPart_000_0000_01C4DD41.385CB8F0"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
Product: GoUpSoft Inc. WebSite:http://www.goupsoft.com

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01C4DD41.385CB8F0
Content-Type: text/html;
charset="shift_jis"
Content-Transfer-Encoding: 7bit
Content-Location: file:///C:/FlashEmbededWebPage.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=shift_jis">
<META content="MSHTML 6.00.2900.2523" name=GENERATOR></HEAD>
<BODY><EMBED src=SampleInput.swf width=500 height=500></EMBED> </BODY></HTML>
009488NGNG

------=_NextPart_000_0000_01C4DD41.385CB8F0
Content-Type: application/x-shockwave-flash
Content-Transfer-Encoding: base64
Content-Location: file://C:\SampleInput.swf

Q1dTBmLoBwB4nIS7dVyT7Rc/PmLECFEcqIQYdEoMSQlBBWkYMUFCehslAwQUUFIBJYWRIt2xjW5E
Rlj0RimhxOBBJaR+m8/3wY+/1y/8R1/32X3e5zrXOed9znXd+gOAdwEA9igAgPk5SJP66OgogpZO
 <<<中略>>>
/LSruDivDdT2x2e7NTPw6XqRW5LXQP97H3/GqaIxyCOGhEOT/xfHOT7brQ2CkOb/i+P9Z8y/9lz9
vzDm/61xjs92+3/ta/v3bLf/u6+n/f+TPyv4R+nngTz0v/MHgv4/EjE7hg==
009588NGNG
------=_NextPart_000_0000_01C4DD41.385CB8F0
Content-Type: text/html;
charset="iso-2022-jp"
Content-Transfer-Encoding: 7bit
Content-Location: file://C:\FlashEmbededWebPage.html

<EMBED SRC="SampleInput.swf" WIDTH="500" HEIGHT="500"></EMBED>
------=_NextPart_000_0000_01C4DD41.385CB8F0--

<<<終わり>>>
0096デフォルトの名無しさんNGNG
OutlookExpressがインストールされていないとMHTは表示できないような
0097デフォルトの名無しさんNGNG
関係ないけど、リッチテキストはもう終わったフォーマットでつか?
0098デフォルトの名無しさん05/01/19 14:20:32
>97
WinHelp内部で使われてるので、すぐには死なない。ヘルプの内容をコピーする時に使え
0099デフォルトの名無しさん05/01/20 08:50:26
結局IE対応変換ツールなるものは無いということか
0100デフォルトの名無しさん05/01/22 20:29:21
boundaryに設定する文字列が本文中に出てきたりしないのかな・・
0101デフォルトの名無しさん05/01/24 20:31:04
 
0102デフォルトの名無しさん05/01/24 20:35:36
本文中に出てこないパターンをboundaryに設定する仕様なんだが
0103デフォルトの名無しさん05/01/24 21:14:15
これでいいか、ぼけ
xdoc2txt
http://www31.ocn.ne.jp/~h_ishida/xdoc2txt.html
■ このスレッドは過去ログ倉庫に格納されています