問題タブ [html5lib]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
447 参照

python - html5lib のどのリビジョンが安定していますか?

html5libは、最新リリース (0.11) がやや古いことを指摘しています。Python 部分を使用すると、問題 70問題 59に記載されている再帰の問題がありますが、安定した最新の Mercurial リビジョンが見つかりません。

最新のヒントはダメです。 から次のエラーが表示されましたpython setup.py install

そして、実行時に次のエラーが発生します。

lxml と BeautifulSoup を使用して Python 2.5.2 で使用しています。

0 投票する
3 に答える
633 参照

python - Python を使用して既存の HTML に一貫した空白を追加するにはどうすればよいですか?

すべての HTML が 1 行にまとめられたページでいっぱいの Web サイトで作業を始めたばかりですが、これを読んだり操作したりするのは本当に面倒です。改行と適切なインデントを追加することを除いて、HTML入力を受け取り、同じHTMLを変更せずに返すツール(できればPythonライブラリ)を探しています。(すべてのタグ、マークアップ、およびコンテンツは変更しないでください。)

ライブラリは不正な HTML を処理する必要はありません。最初にhtml5libを介して HTML を渡しているので、整形式の HTML が得られます。ただし、前述のとおり、実際のマークアップ自体は一切変更しない方がよいでしょう。私は html5lib を信頼しており、正確さの側面を処理させたいと考えています。

まず、html5libだけでこれが可能かどうか知っていますか? (残念ながら、彼らのドキュメントは少しまばらなようです。)そうでない場合、どのツールをお勧めしますか? HTML Tidy を推奨する人もいますが、空白のみを変更するように構成できるかどうかはわかりません。(最初に整形式の HTML が渡された場合、空白を挿入する以外に何かを行うでしょうか?)

0 投票する
1 に答える
4945 参照

python - Windows に Python 用の html5lib-0.90 ライブラリをインストールするには?

私はWindowsを使用しており、pythonにhtml5lib-0.90ライブラリをインストールしようとしています

このライブラリを Windows にインストールすることは可能ですか?

チュートリアルやインストールマニュアルはありますか?

0 投票する
7 に答える
16621 参照

python - html5libを使用してHTMLを解析し、XPathを使用して解析したHTMLをクエリするにはどうすればよいですか?

html5libを使用して、xpathでクエリできるものにhtmlページを解析しようとしています。html5libのドキュメントはほぼゼロであり、この問題を理解するために多くの時間を費やしてきました。最終的な目標は、テーブルの2番目の行を引き出すことです。

だからそれを試してみましょう:

それはよさそうだ、私たちが他に何を持っているか見てみましょう:

笑WUT?

真剣に。xpathを使用して必要なデータを取得することを計画していましたが、うまくいかないようです。それで、なにかお手伝いできますか?私はさまざまなライブラリとアプローチを試してみようと思っています。

0 投票する
1 に答える
329 参照

python - html5lib の動画のサニタイズをスキップ

私はdjangoでwmd-editorを使用しています。これは、私が入力しているものとよく似ています。ユーザーが動画を埋め込むことを許可したいと思います。そのために、ここではMarkdown ビデオ拡張機能を使用しています。問題は、html5lib サニタイズを使用してユーザー入力もサニタイズしており、ビデオの埋め込みに必要なオブジェクト タグが許可されていないことです。

解決策の 1 つは、よく知られている動画サイトの URL の入力を確認し、そのような場合はサニタイズをスキップすることです。より良い解決策はありますか?

0 投票する
5 に答える
4992 参照

python - BeautifulSoup ユーザー向けの html5lib/lxml の例

BeautifulSoup から離れようとしています。これは大好きですが、(積極的に) サポートされていないようです。html5lib と lxml を使用しようとしていますが、"find" および "findall" 演算子の使用方法がわかりません。

html5lib のドキュメントを見て、テスト プログラムとして次のように思いつきました。

しかし、これは None を返します。を実行すると、すべてのデータが返されることに気付きましたetree.tostring(root)が、すべてのタグはhtml(eg <html:table>) で始まります。しかしroot.find(".//html:tr")、KeyError をスローします。

誰かが私を正しい軌道に戻すことができますか?

0 投票する
1 に答える
916 参照

python - Python:グーグルアドセンスの収益レポートを取得

私はグーグルアドセンスの収益を取得するPythonスクリプトが必要です、そして私はアドセンススクレーパーを見つけました:http: //pypi.python.org/pypi/adsense_scraper/0.5 それはグーグルアドセンスの収益データをスクレイプするためにTwillとhtml5libを使用します。使用すると、次のエラーメッセージが表示されます。

したがって、重要なことは次のとおりです。

誰かがエラーがどこにあるか教えてもらえますか?Python経由でデータを取得するさらに良い方法はありますか?ありがとう

0 投票する
0 に答える
625 参照

python - lxml と html5lib を使用して html を解析すると、「TypeError: insertDoctype() は正確に 4 つの引数 (2 つ指定) を取ります」を取得します。

TypeError: insertDoctype() takes exactly 4 arguments (2 given)lxml と html5lib を一緒に使用するとエラーが発生します。( linkinsertDoctype ) のメソッドは 4 つの引数を取るようですが、html5lib コード ( link ) は 2 つの引数で呼び出します。私はどういうわけかこれを間違って使用していますか?lxml.html._html5builder.TreeBuilder

これらは私が使用しているバージョンです:

私のソースコード:

そしてエラー:

0 投票する
1 に答える
981 参照

python - html5lib.sanitizer で不適切なタグを完全に削除する

ドキュメントで提案されているように、ユーザー入力をクリーンアップするために html5lib.sanitizer を使用しようとしています

問題は、悪いタグをエスケープするだけでなく、完全に削除したいことです (とにかく悪い考えのようです)。

ここのパッチで提案されている回避策は、期待どおりに機能しません ( a の内部コンテンツを保持します<tag>content</tag>)。

具体的には、次のようなことをしたいです。

入力:

出力:

それを達成する方法についてのアイデアはありますか?BeautifulSoup を試してみましたが、うまく動作しないようです。また、lxml<p></p>は非常に奇妙な場所 (たとえば、src 属性の周囲) にタグを挿入します。これまでのところ、html5lib は、タグをエスケープする代わりにタグを削除することができれば、この目的に最適なようです。

0 投票する
1 に答える
2042 参照

python - Pythonでhtml5libを使用してbody要素のコンテンツを取得するにはどうすればよいですか?

Python<body>で使用して要素のコンテンツを取得するにはどうすればよいですか?html5lib

入力データの例:<html><head></head><body>xxx<b>yyy</b></hr></body></html>

期待される出力:xxx<b>yyy</b></hr>

HTML が壊れていても動作するはずです (閉じられていないタグなど)。