Ruby, Nokogiri: Ruft den Elementnamen des ausgewählten Knotens ab

Einführung

In Nokogiri können Sie einen Knoten auswählen, indem Sie den Elementnamen mit css oder at_css angeben. Im Gegenteil, ich habe mich gefragt, wie der Elementname vom ausgewählten Knoten abgerufen werden soll, und habe ihn überprüft. ..

Verwenden Sie die Namensmethode

Das Abrufen des Elementnamens eines Knotens ist sehr einfach. Angenommen, Sie haben die folgende HTML-Datei.

hello.html


<html>
  <head>
    <title>hello</title>
    <meta charset="UTF-8">
  </head>
  <body>
    <p>Hallo</p>
  </body>
</html>

Wählen Sie das p-Tag in at_css aus.

sample.rb


require 'nokogiri'

html = open('hello_utf8.html').read
doc = Nokogiri::HTML.parse(html)

element = doc.at_css('p')

p element.name  #=> 'p'
p element.parent.name  #=> 'body'

Sie können auch übergeordnetes Element usw. verwenden, um einen anderen Knoten auszuwählen und den Elementnamen abzurufen.

schließlich

Normalerweise schaue ich mir zuerst die HTML-Struktur an und schabe sie dann ab, daher glaube ich nicht, dass es sehr gefragt ist, den Elementnamen vom Knoten zu erhalten ^^;

Recommended Posts

Ruby, Nokogiri: Ruft den Elementnamen des ausgewählten Knotens ab
[Kotlin] Ermittelt den Argumentnamen des Konstruktors durch Reflektion
Rufen Sie den Namen des Testfalls in der JUnit-Testklasse ab
Rufen Sie die URL des HTTP-Umleitungsziels in Ruby ab
Ruft den Objektnamen der vom neuen Operator erstellten Instanz ab
Ruby / rexml: Drehen Sie jedes mit einem Element mit dem gleichen Namen
Über das Verhalten von Ruby Hash # ==
Holen Sie sich die ID der automatischen Nummerierung
[Für Anfänger] So erhalten Sie den Namen der Ruby-Eisenbahnlinie
[Ruby] Zeigt den Inhalt von Variablen an
Erhalten Sie Daten aller Premier League-Spieler, indem Sie mit Ruby (nokogiri) kratzen.
Rufen Sie den Typ eines Elements eines Arrays ab, um festzustellen, ob es sich um ein Array handelt
Ich möchte den Feldnamen des [Java] -Felds erhalten. (Alter Ton)
Holen Sie sich das Ergebnis von POST in Java
[Ruby] Schneiden Sie den Inhalt von Twitter-Anzeigen ab
[Rails] Ändern Sie den Labelnamen von f.label
[Swift] Ändern Sie die Farbe des SCN-Knotens
graphql-ruby: So erhalten Sie den Namen der Abfrage oder Mutation im Controller Hinweis
[Rails] Ruft den Pfadnamen der URL vor dem Übergang ab und ändert das Linkziel
Benennen und rufen Sie in Ruby übergeordnete Klassenmethoden explizit auf
So finden Sie die Ursache des Ruby-Fehlers
[Ruby] Zusammenfassung der Klassendefinitionen. Beherrsche die Grundlagen.
[Ruby on Rails] Bis zur Einführung von RSpec
Wenn Sie sich im Klassennamen verlieren
Die Geschichte der Einführung der Ajax-Kommunikation in Ruby
[Java] Ermittelt die Länge der Ersatzpaarzeichenfolge
[JAVA] Nur den Dateinamen abrufen, ausgenommen die Erweiterung
Verwalten Sie die Version von Ruby selbst mit rbenv
Wie komme ich zum heutigen Tag?
Benennen Sie den Paketnamen einer vorhandenen JAR-Datei um
[Ruby] Code zur Anzeige des Tages
Der offizielle Name von Spring MVC ist Spring Web MVC
Ich habe die Anzahl der Taxis mit Ruby überprüft
Ich möchte den Wert in Ruby erhalten
So erhalten Sie den Klassennamen des Arguments von LoggerFactory.getLogger, wenn Sie SLF4J in Java verwenden