6

html2text pythonパッケージを使用してhtmlをマークダウンに変換すると、テキストに「\n」が追加されます。http://www.aaronsw.com/2002/html2text/でデモを試してみると、この動作も見られます。

これをオフにする方法はありますか?もちろん自分で削除することもできますが、元のテキストに削除したくない「\n」が含まれている可能性があります。

    html2text('Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.')

    u'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\ntempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,\nquis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo\nconsequat. Duis aute irure dolor in reprehenderit in voluptate velit esse\ncillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non\nproident, sunt in culpa qui officia deserunt mollit anim id est laborum.\n\n'
4

2 に答える 2

10

最新バージョンのhtml2textでは、次のようにします。

import html2text
h = html2text.HTML2Text()
h.body_width = 0
note = h.handle("<p>Hello, <a href='http://earth.google.com/'>world</a>!")

これにより、html2textが他の方法で行うワードラップが削除されます

于 2016-12-19T11:42:36.100 に答える
7

ソースをhtml2text.pyに見ると、に設定BODY_WIDTHすることでラッピング動作を無効にできるようです0。このようなもの:

import html2text
html2text.BODY_WIDTH = 0
text = html2text.html2text('...')

もちろん、BODY_WIDTHグローバルにリセットすると、モジュールの動作が変わります。この機能にアクセスする必要がある場合は、モジュールにパッチを適用し、html2text()呼び出しごとにこの動作を変更するためのパラメーターを作成し、このパッチを作成者に提供することをお勧めします。

于 2012-10-11T12:10:12.260 に答える