問題タブ [tag-soup]

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 に答える
138 参照

java - Tagsoup 、別のタグへのテキストとしてのタグ付け

こんにちは皆さん、このメッセージが皆さんを元気にしてくれることを願っています。だから私の質問はtagsoupと関係があります。私が達成したいのは、タグを別のタグのテキストとして持つことです。具体的に<a href="http://twitter.com/devices" rel="nofollow">は、タグのTEXTにしたいのです<SOURCE>が、毎回以来それを行うことができないようです開いた先のとがった括弧を見て、それを新しいタグとして解釈します。これを実行する方法はありますか?

前もって感謝します。

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

java - Java と XPath および TagSoup

一部のデータを抽出するために Java で TagSoup を使用していますが、特定の XPATH が機能していないため、空の結果が得られます

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

java - プレーンな html テキストをタグで囲む

私は自分のhtmlドキュメントにこの構造を持っています:

しかし、それを処理できるようにするには、「プレーンテキスト」をタグでラップする必要があります:)

これを達成する方法はありますか?私はtagsoupとjsoupを見てきましたが、これを簡単に解決する方法はないようです。たぶん、派手な正規表現を使用しています。

ありがとう

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

performance - TagSoup vs JSoup :: パフォーマンス?

実際のドキュメントの TagSoup と JSoup のパフォーマンス比較を探しています。これまで、HTML 処理に TagSoup を使用してきましたが、非常にうまく機能しています。唯一の欠点は、SAX の性質上、スタックを使用して多くのことをプログラムで実行する必要があることです (たとえば、タグ付きのテキストを処理するため)。JSoup の方が簡潔に見えますが、パフォーマンスが心配です。

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

java - どの html パーサーを使用すればよいですか?

HTML ドキュメントを解析する必要がある製品に取り組んでいます。Jericho、TagSoup、Jsoup、および Crawl4J を探しました。Quartz を使用してマルチスレッド環境でこのプロセスを実行する必要があるため、HTML を解析するにはどのパーサーを使用すればよいですか?

一度に 10 個のスレッドがメモリ内で実行される場合、メモリの消費量が少ない API が必要です。ジェリコでは、テキストベースの検索 API であり、メモリ消費量が少ないことをどこかで読みました。私は正しいですか?または、他の方法を選択する必要がありますが、その理由は何ですか?

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

node.js - tagsoup 使用時のアポストロフィによるエラー

node.js Web アプリケーションで Web サイトの説明を取得しようとしています。完全に機能しているように見えますが、node.js は NCR の文字に問題があるようです (http://en.wikipedia.org/wiki/Numeric_character_reference)。リンクグラバー用のコードを以下に示します

例として、情報を取得するフォーム (http://www.zdnet.com) に次の URL を入力すると、説明は になりますZDNet&#039;s breaking news, analysis, and research keeps business technology professionals in touch with the latest IT trends, issues and events.。アポストロフィが問題です ( として表されます&#039;)

私の質問は、どのライブラリも有効な HTML NCR を適切に解析して同等の文字列に変換しないのはなぜですか。これを修正する方法がない場合、NCR のすべての出現箇所をいくつかの他のライブラリ?

私が使用しているライブラリを以下に示します

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

html - bash で TagSoup を使用して HTML を XHTML に変換する

TagSoup を使用して HTML を XHTML に変換できるという印象を受けました。tagsoup jar ファイルを tagsoup.jar として保存しました。次のコマンドwget -O usa_stock.html "http://markets.usatoday.com/custom/usatoday-com/new/html-mktscreener.asp#" | java -jar tagsoup.jar usa_stock.htmlを使用しました。このコマンドを使用すると、html ファイルと xhtml ファイルの両方が生成されますが、xhtml を firefox で開くと空になります。パイプライン処理すると、変換しようとしているファイルがわからないのではないかと思います。

誰かがこれで私を助けることができますか?

ありがとう。

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

java - XPath とリンクに関する問題

初めて投稿します!

私が抱えている問題は、XPath と Tag-Soup を使用して Web ページを解析し、データを読み取っていることです。これらはニュース記事であるため、コンテンツにリンクが埋め込まれている場合があり、これらが私のプログラムを台無しにしています。

私が使用している XPath はstoryPath = "//html:article//html:p//text()";、ページが次の構造を持つ場所です。

xpath 評価に関連する私のコードは次のとおりです。

これが私に与える出力は

このエラーを解消する方法はありますか? 私はどこかで間違ったアプローチを取っていますか?(setStory コードを使用できることは理解していますが、別の方法はありません。

tmp.replace() コードがなければ、すべての結果は [#text: what a great story this is] などのように表示されます。

編集:

おそらく別の種類ですが、私はまだ問題を抱えています..ここで私を殺しているのは再びリンクですが、BBCのウェブサイトの方法では、リンクは別の行にあるため、同じ問題でまだ読み込まれます前に説明したように (問題は与えられた例で修正されたことに注意してください)。BBC ページのコードのセクションは次のとおりです。

出力に次のように表示されます。

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

groovy - groovy の href タグから URL を抽出する

不正な HTML ページを解析し、そこから特定の URL を任意の種類のコレクションとして抽出する必要があります。コレクションの種類はあまり気にしません。それを繰り返し処理できるようにする必要があるだけです。

次のような構造があるとします。

そして、これが私がこれまでに行っていることです:

私は何かが欲しい

しかし、私が得るのは次のとおりです。

より正確に言うと、すべての URL を使用することはできません。なぜなら、解析する必要がある HTML ドキュメントは約 15,000 行の長さで、必要のない URL がたくさんあるからです。したがって、各「内部」ブロックの最初のURL が必要です。

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

groovy - 名前空間とエンティティを使用して Groovy で XML を解析する

Groovy で XML を解析するのは簡単なことですが、私はいつも問題に遭遇します。

次のような文字列を解析したいと思います。

標準的な方法で行うと、パーサーはエンティティnew XmlSlurper().parseText(body)について不平を言います。&nbspこのような場合の私の秘密兵器は、tagsoup を使用することです。

しかし、<ac:sepcial>タグはパーサーによってすぐに閉じspecialられます。結果の DOM では、テキストはこのタグ内にありません。名前空間機能を無効にしても:

もう 1 つの方法は、標準のパーサーを使用して、次のような Doctype を追加することでした。

これはほとんどのファイルで機能するようですが、パーサーが dtd を取得して処理するには時間がかかります。

これを解決する良いアイデアはありますか?

PS: ここでいくつかのサンプル コードを試してみてください。