問題タブ [html-tree]

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 投票する
3 に答える
2257 参照

html - HTML :: TreeBuilderで直接の子孫だけを見つける方法は?

次のようなHTMLツリーがあるとします。

<li>でマークされている要素を選択するにはどうすればよい(*)ですか?それらは最初の<ul>要素の直接の子孫です。

これが私が最初の<ul>要素を見つける方法です:

$ul、私は持っていますが、私が次のようなことをするとき:

また<li>、HTMLツリーの奥深くに埋め込まれている要素も検出します。

<li>最初の要素の直接の子孫である要素だけを見つけるにはどうすればよい<ul>ですか?数は不明です。(例のように最初の4つだけを選択することはできません)。

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

html - リンクを抽出する HTML Treebuilder XPath

Web ページからすべてのリンクを抽出する基本的なスクリプトを作成しています。これは Perl で書かれており、WWW::Mechanize と HTML::Treebuilder::Xpath モジュールを使用しています。どちらも CPAN からインストールしました。

WWW::Mechanize だけを使用して簡単に実行できることはわかっていますが、XPath を使用して実行することも学びたいと考えています。

そのため、スクリプトは Web ページ全体を解析し、すべてのアンカー タグの href 属性をチェックし、リンクを抽出してコンソールに出力/ファイルに書き込みます。以下のスクリプトでは use strict を使用していないことに注意してください。XPath を使用して HTML ツリーをトラバースするという概念を明確にして理解するためにこれを書いているだけだからです。

ここにスクリプトがあります:

そして、それはエラーを出します:

スクリプトを次のように変更しました。

エラー:

href 属性の値を出力する方法がわかりません。

$nodes は、すべての href 属性のリストを保持する必要がありますか? 値を格納するのではなく、値へのポインタを格納すると思いますか?

例を検索して読んでみましたが、どうすればよいかわかりません。

ありがとう。

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

html - perl スクリプトによる HTML パーサー

私のコードは出力を印刷していません。$tree->find("p")NULL を返しています。

0 投票する
2 に答える
679 参照

perl - PerlのHTML::Element-子孫だけをHTMLとしてダンプします

解析している一致したノードの内容を出力しようとして問題が発生しました。

私はHTML::TreeBuilder::XPathノードを見つけるために使用しています(このクラスにはdivが1つだけあります):

HTML::Elementノード(私が信じているように返されます)を見つけます$description->as_HTMLが、要素自体も含みます-要素内にすべてをHTMLとして含める必要があります:

私は明らかにそれを正規表現で取り除くことができますが、それは厄介な感じで、それを行うための機能がどこかに欠けていると確信していますか?

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

perl - HTML::TreeBuilder でタグの一部ではない本文のテキストを抽出する

次のような醜い html がプログラムにメールで送信されます。

...簡潔にするために残りを切り取りました。

HTML::TreeBuilder を使用してテーブル要素を引き出すことはできますが、他の手段に頼らずに「名前:」と「クエリ用語」を上から引き出す方法がわかりません。

上記の $root->dump は次のようになります。

@0.1.0.2 と @0.1.0.4 の間の裸のテキストを取得する方法はありますか

ありがとう!トッド

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

perl - HTML::TreeBuilder を使用して HTML ファイルの列の値を更新する

複数のテーブルを含む HTML ファイルがあります (すべてのテーブルには同じ数の列と同じ列名があります)。表は他の HTML タグで区切られています。

各テーブルの各行について、セル 1 とセル 3 の値を変更したいと思います。

これは私がこれまでに持っているものです(@depeszに感謝):

HTML ファイル内のすべての行を反復処理するのに最適です。列 1 と列 3 のテキストを変更する最後の部分を行う方法がわかりません。

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

linux - HTML::TreeBuilder::XPath のインストールに失敗しました

バージョン 0.13 の ** HTML::TreeBuilder::XPath ** をインストールしようとしていますが、失敗します。

誰でも何が原因であるかを示唆できますか。

0 投票する
2 に答える
342 参照

perl - perl html treebuilder エラー状態の処理方法

タスクは非常に単純です: URL にアクセスし、結果に基づいて解析します。エラー (404、500 など) が発生した場合は、適切な処置を行ってください。最後のピースは、私が問題を抱えているものです。
現在使用している両方のコードをリストしました。長い方 (LWP+TreeBuilder) は両方の条件で機能します。短い方 (TreeBuilder) は最初の条件では機能しますが、エラー条件では機能しません。TreeBuilder を使用していて、サイトが 404 またはその他のエラーを返した場合、スクリプトは単純に終了します。何か案は ?

機能するより長いコード

ない短いもの