検索
ホームページウェブフロントエンドhtmlチュートリアルjsoup: HTML_html/css_WEB-ITnose の解析の使用法の概要

1. 解析方法

(1) 文字列からの解析

String html = "

最初の解析

";

Document doc = Jsoup.parse(html);

?

(2) from URL取得と解析

Document doc = Jsoup.connect("http://example.com/").get();

String title = doc.title();

Document doc = Jsoup.connect(" http://example.com") .data("query", "Java").userAgent("Mozilla").cookie("auth", "token").timeout(3000).post();

... parse(input, "UTF-8", "http://example.com/");

2. DOM 内の要素の走査 (1) 要素の検索

getElementById(文字列 ID)

getElementByTag(文字列タグ)

getElementByClass(文字列クラス名)

getElementByAttribute(文字列キー)

siblingElements()、firstElementSibling()、lastElementSibling()、nextElementSibling()、previousElementSibling()

parent( ) ,children(),child(intindex)


(2) 要素データの取得

attr(String key) ? キー属性の取得

attributes() 属性の取得

id(), className(), classNames ? ()

text() ? テキストコンテンツを取得します

html() ? この要素を含む HTML コンテンツを取得します

data() ? ;srcipt> または

tag tag (), tagName()


3. セレクター構文 (jsoup と他のパーサーの違いは、jquery のようなセレクター構文を使用して検索およびフィルタリングできることです必要な要素)

(1) 基本セレクター

tagname: タグ タグ要素を検索します

ns|tag: fb|name: などの名前空間内のタグ タグ要素を検索します。 #id: 指定された ID を持つ要素を検索します

. class: 指定されたクラスを持つ要素を検索します

[attribute]: attribute 属性を持つ要素を検索します

[^attri]: attri で始まる属性を持つ要素を検索します

[attr=value]: 指定された属性を持つ要素とその属性値を持つ要素を検索します。

[attr^=value]、[attr$=value]、[attr*=value]: 指定された属性を持つ要素を検索します。指定された attr 属性であり、その属性値が [href*=/path/] などの値で始まる、終わる、または値を含む


[attr~=regex]: 指定された attr 属性を持ち、その属性値がregex 正規表現

*: 全要素を検索
(2) セレクタの組み合わせ

el#id: タグ名とIDを同時に指定

el.class: タグ名とクラスを同時に指定time

el[attr]: タグ名とそれに含まれる属性名を同時に指定

上記3項目のいずれか a[href].highlight などの組み合わせ

ancestor child: を含むdiv.content p のように、

ancestor > の下にある要素を検索します。つまり、
ノードの直下にある

タグ要素を検索します。つまり、

siblingA + siblingB の下の要素: div.head + div など、直接トラバースします。つまり、子要素

siblingA を含まない
の要素を検索します。 ~ siblingX: h1 ~ p など、

の下に直接的または間接的に

を持つ要素を走査します

el、el、el: 複数のセレクターを組み合わせて、セレクターの 1 つを満たす要素を検索します

(3) 擬似セレクター(条件セレクター)

:lt(n): 要素 n より前の要素を検索

:gt(n): 要素 n より後の要素を検索

:eq(n): 要素 n を検索

:has(seletor): 要素 n を検索

指定されたセレクターと一致します

:not(seletor): 指定されたセレクターと一致しない要素を検索します

:contains(text): 指定されたテキストを含む要素を検索します。大文字と小文字を区別します

:containsOwn(text):直接検索 指定したテキストを含む要素を参照します

:matches(regex): 指定した正規表現に一致する要素を検索します

:matchesOwn(regex): この要素のテキスト内で指定した正規表現に一致する要素を検索します

注: 上記の疑似セレクター のインデックスでは、最初の要素はインデックス 0 にあり、2 番目の要素はインデックス 1 にあります...

4. 要素の属性、テキスト、HTML を取得します


要素の属性値を取得します: Node.attr(String key)

結合された子要素を含む要素のテキストを取得します: Element.text()

HTML を取得します: Element.html() またはNode.outerHtml()

5. URL を操作します


Element.attr("href") ? URL を直接取得します

Element.attr("abs:href") または Element.absUrl("href") ) ? 完全な URL を取得します。 HTML がファイルまたは文字列から解析される場合、Jsoup.setBaseUri(StringbaseUri) を呼び出してベース URL を指定する必要があります。そうしないと、取得される完全な URL は空の文字列のみになります

6. テスト例


li[ class=info] a[class=Author] - 前後のスペースは包含関係を示し、これは li の a を意味します

div[class=mod mod-main mod-lmain]:contains (Teaching Reflection) - div "Teaching Reflection" が含まれており、同時に同じ名前を持つ複数の DIV が存在する状況に適しています

/*

PreviousSibling() は特定のラベルの前のコードを取得します

nextSibling() は特定のラベルの後のコードを取得しますラベル

例:

1 位: リリー

2 位: トム

3 位: ピーター
;

*/

要素 items = doc.select("form[id=form1]");

for(Element) p : prevs){

String prevStr = p.previousSibling().toString().trim());

/*

最も一般的に使用されるリンク

*/

String itemTag = " div[class=mydiv]";

String linkTag = "a"

要素 items = doc.select(itemTag);

要素 links = items.select(linkTag);

for(Element l : links){

String href = l.attr("abs: href");//完全な Href

String absHref = l.attr("href");//相対パス

String text = l.text();

String title = l.attr("title") ;

}

7.jsoup オンライン API

http://jsoup.org/apidocs/


声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
HTML:構造、CSS:スタイル、JavaScript:動作HTML:構造、CSS:スタイル、JavaScript:動作Apr 18, 2025 am 12:09 AM

Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。1。HTMLは、Webページ構造を定義し、2。CSSはWebページスタイルを制御し、3。JavaScriptは動的な動作を追加します。一緒に、彼らは最新のウェブサイトのフレームワーク、美学、および相互作用を構築します。

HTMLの未来:ウェブデザインの進化とトレンドHTMLの未来:ウェブデザインの進化とトレンドApr 17, 2025 am 12:12 AM

HTMLの将来は、無限の可能性に満ちています。 1)新機能と標準には、より多くのセマンティックタグとWebComponentsの人気が含まれます。 2)Webデザインのトレンドは、レスポンシブでアクセス可能なデザインに向けて発展し続けます。 3)パフォーマンスの最適化により、応答性の高い画像読み込みと怠zyなロードテクノロジーを通じてユーザーエクスペリエンスが向上します。

HTML対CSS対JavaScript:比較概要HTML対CSS対JavaScript:比較概要Apr 16, 2025 am 12:04 AM

Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。HTMLはコンテンツ構造を担当し、CSSはスタイルを担当し、JavaScriptは動的な動作を担当します。 1。HTMLは、セマンティクスを確保するためにタグを使用してWebページの構造とコンテンツを定義します。 2。CSSは、セレクターと属性を介してWebページスタイルを制御して、美しく読みやすくします。 3。JavaScriptは、動的でインタラクティブな関数を実現するために、スクリプトを通じてWebページの動作を制御します。

HTML:それはプログラミング言語か何か他のものですか?HTML:それはプログラミング言語か何か他のものですか?Apr 15, 2025 am 12:13 AM

htmlisnotaprogramminglanguage; itisamarkuplanguage.1)htmlStructuresandformatswebcontentusingtags.2)ItworkswithcsssssssssdjavascriptforInteractivity、強化を促進します。

HTML:Webページの構造の構築HTML:Webページの構造の構築Apr 14, 2025 am 12:14 AM

HTMLは、Webページ構造の構築の基礎です。 1。HTMLは、コンテンツ構造とセマンティクス、および使用などを定義します。タグ。 2. SEO効果を改善するために、などのセマンティックマーカーを提供します。 3.タグを介したユーザーの相互作用を実現するには、フォーム検証に注意してください。 4. JavaScriptと組み合わせて、動的効果を実現するなどの高度な要素を使用します。 5.一般的なエラーには、閉じられていないラベルと引用されていない属性値が含まれ、検証ツールが必要です。 6.最適化戦略には、HTTP要求の削減、HTMLの圧縮、セマンティックタグの使用などが含まれます。

テキストからウェブサイトへ:HTMLの力テキストからウェブサイトへ:HTMLの力Apr 13, 2025 am 12:07 AM

HTMLは、Webページを構築するために使用される言語であり、タグと属性を使用してWebページの構造とコンテンツを定義します。 1)htmlは、などのタグを介してドキュメント構造を整理します。 2)ブラウザはHTMLを分析してDOMを構築し、Webページをレンダリングします。 3)マルチメディア関数を強化するなど、HTML5の新機能。 4)一般的なエラーには、閉じられていないラベルと引用されていない属性値が含まれます。 5)最適化の提案には、セマンティックタグの使用とファイルサイズの削減が含まれます。

HTML、CSS、およびJavaScriptの理解:初心者向けガイドHTML、CSS、およびJavaScriptの理解:初心者向けガイドApr 12, 2025 am 12:02 AM

webdevelopmentReliesOnhtml、css、andjavascript:1)htmlStructuresContent、2)cssStylesit、および3)Javascriptaddsinteractivity、形成、

HTMLの役割:Webコンテンツの構造HTMLの役割:Webコンテンツの構造Apr 11, 2025 am 12:12 AM

HTMLの役割は、タグと属性を使用してWebページの構造とコンテンツを定義することです。 1。HTMLは、読みやすく理解しやすいようなタグを介してコンテンツを整理します。 2。アクセシビリティとSEOを強化するには、セマンティックタグなどを使用します。 3. HTMLコードの最適化により、Webページの読み込み速度とユーザーエクスペリエンスが向上する可能性があります。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。