問題タブ [nokogiri]

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

ruby - XPath ではなく CSS を介してテキスト コンテンツを含む要素を選択するにはどうすればよいですか?

" Nokogiri: How to select nodes by matching text? " は XPath 経由でこれを行うことができますが、要素のテキストに一致する CSS 選択を使用する方法を探しています。

PyQuery と PHPQuery はこれを行うことができます。Ruby 用の jQuery API ライブラリはありませんか?

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

xpath - xpathのグループから共通の祖先を見つけますか?

私が持っていると言う

どうすれば共通の祖先を取得できますか? この場合、スパンは「font、h1、b、div」の共通の祖先であり、 「スパン」になります。

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

ruby - get common xpath ancestor node?

Possible Duplicate:
finding common ancestor from a group of xpath?

im using nokogiri.

i need to get the common xpath ancestor of group of elements.

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

xml - XPathクエリとしてフォーマットされたXSLT現在のノードを取得しますか?

次のようなコードのブロックがあり、ツリーの下のノードの名前を取得します。

section/page/subPage

しかし、私はそれを次のように理解できるようにしたいと思います(それを構成するだけです):

section[@id='someId']/page/subPage[@user='UserA']/@title

これらのStackOverflow投稿の1つから次のコードを見つけました:

p>

これは私にまっすぐな道を与えますが、@ id(または関連する属性)を含むように、より多くのロジックを実行して、現時点では考えられないものを追加したいと思います。

これを行うための最良の方法は何ですか?

EXSLT関数をチェックインしましたが、これは機能する可能性がありますが、皆さんはすでにこの問題をより良い方法で解決しているかもしれません。

何か案は?

私はrubyのnokogiriを使用して、xml/xsltを解析しています。

どうもありがとう、ランス

0 投票する
4 に答える
10298 参照

html - Rubyを使用してHTMLドキュメントからテキストを削除します

Rubyを使用してドキュメントからHTMLタグを削除する方法の例はたくさんあります。HpricotとNokogiriには、すべてのHTMLを簡単かつ迅速に削除するinner_textメソッドがあります。

私がやろうとしているのは逆で、HTMLドキュメントからすべてのテキストを削除し、タグとその属性だけを残します。

私はinner_htmlをnilに設定するドキュメントをループすることを検討しましたが、最初の要素(ルート)にはドキュメントの残り全体のinner_htmlがあるため、実際にはこれを逆に行う必要があります。理想的には、最も内側の要素であり、祖先を上に移動しながら、inner_htmlをnilに設定します。

これを効率的に行うためのちょっとしたコツを知っている人はいますか?私はおそらく正規表現がそれを行うかもしれないと思っていましたが、おそらくHTMLトークナイザー/パーサーほど効率的ではありません。

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

xml - XML を XSLT で変換し、CDATA を保持する (Ruby で)

次のようなコンテンツを含むドキュメントを別のドキュメントに変換しようとしています。CDATA は最初のドキュメントとまったく同じままですが、CDATA を XSLT で保持する方法がわかりません。

初期 XML:

最終的な XML:

私はこのようなことを試しましたが、運が悪く、すべてがごちゃごちゃになります:

CDATA を保存する方法はありますか?

ありがとう!ランス

ruby/のこぎりを使う

更新:これは機能するものです。

これにより、すべての text() ノードが CDATA でラップされます。これは、必要なもので機能し、テキスト内の html タグを保持します。

0 投票する
4 に答える
10265 参照

ruby - のこぎりのすべてのタグの間でテキストをつかむ?

HTMLタグ間のすべてのテキストを取得する最も効率的な方法は何でしょうか?

htmlタグで囲まれたテキストの束。

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

ruby - htmlタグで囲まれた各テキストを配列に入れますか?

のこぎりを使って、

これでうまくいきますが、すべてを 1 つのフラットなテキストにまとめます。

HTMLタグで囲まれた各テキストを取得する必要があります

それらを配列に入れます。[「テキスト」、「テキスト3」]

推奨されるアクションは何ですか?

やろうと思った

doc.xpath("*").テキスト

しかし、それをすべて反復する方法がわかりません。

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

ruby - 子ノード内のテキストを含む親ノードを選択

基本的に、子ノード(h1、b、h3)に指定されたテキストが含まれているノード(div)を選択したいと考えています。

私は期待しています、/html/div/ ではなく /html/div/h1

私はこれを以下に持っていますが、残念ながらdivへのxpathではなく、子を返します。

私は期待しています、/html/div/ ではなく /html/div/h1

xpath構文でこれを簡単に行う方法はありますか?

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

ruby - latin1文字列をutf8に変換しますか?

latin1文字を含む文字列をutf8に変換するにはどうすればよいですか?

文字列は、open-uriによって開かれ、これらの特殊文字を含むドキュメントです。

よろしくお願いします