BeautifulSoup extrahiert XPATH oder CSS Pfad des Knotens

8

Ich möchte einige Daten aus HTML extrahieren und dann in der Lage sein, extrahierte Elemente auf der Client-Seite hervorzuheben, ohne Quell-HTML zu ändern. Und XPath oder CSS Path sieht dafür gut aus. Ist es möglich, XPATH oder CSS Path direkt aus BeautifulSoup zu extrahieren?
Im Moment verwende ich die Markierung des Zielelements und dann lxml lib, um xpath zu extrahieren, was sehr schlecht für die Performance ist. Ich weiß über BSXPath.py - es funktioniert nicht mit BS4. Die Lösung, die alles umschreibt, um native lxml lib zu verwenden, ist aufgrund der Komplexität nicht akzeptabel.

%Vor%     
Dmytro Sadovnychyi 22.09.2014, 08:16
quelle

2 Antworten

4

Es ist eigentlich ziemlich einfach, einfache CSS / XPath zu extrahieren. Dies ist die gleiche lxml-Bibliothek, die Sie erhalten.

%Vor%     
Dmytro Sadovnychyi 28.08.2015, 04:15
quelle
1

Ich fürchte, die Bibliothek ist dazu noch nicht in der Lage. Sie können sie per CSS-Pfad greifen ... SORTA ... aber, es ist ein bisschen gewunden, wo Sie jedes Element und Klasse, ein Beispiel nennen:

%Vor%

Sie können auch IDs anstelle von Klassen oder beides verwenden, wenn Sie es vorziehen, genauer zu sein, was Sie greifen.

Sie können es ändern, um den Pfad weiter zu verfolgen:

%Vor%

und so weiter.

Es gibt auch Möglichkeiten, um durch die eingebaute "next" Funktion zu navigieren:

%Vor%     
CJACust 26.11.2014 17:55
quelle

Tags und Links