不幸的是,伪类:has()
似乎不受
selectr
/cssselect
,rvest
使用它们来解析CSS Select 器.
否则,这样的事情就会奏效:
# html |>
# html_elements("article") |>
# html_elements("p:not(:has(a))")
我们可以通过将xml_nodelist
转换为character
来解决此问题
其中<p>
个元素中有<a>
.那我们
将xml_nodelist
设置为仅包括中没有LINK/<a>
的那些
他们.
library(rvest)
library(stringr)
html <-
read_html(
"https://www.news4teachers.de/2023/08/schaemt-euch-deutschland-steht-vor-den-vereinten-nationen-am-pranger-weil-es-die-inklusion-an-schulen-verweigert/"
)
all_p <-
html |>
html_elements("article") |>
html_elements("p")
has_link <- all_p |> as.character() |> str_detect("</a>")
all_p[!has_link]
#> {xml_nodeset (13)}
#> [1] <p>GENF. <strong>„Schämt Euch!“ – so heißt es auf einem Transparent, das ...
#> [2] <p><script charset="utf-8" async consent-original-src-_="https://platfor ...
#> [3] <p>Es ist fast schon dreist, wie Deutschland auf die offizielle Staatenp ...
#> [4] <p>Auch in einer gemeinsamen Stellungnahme von einem Bündnis deutscher N ...
#> [5] <p>„In keinem Bildungsbereich – von der Kita über Schule, Ausbildung und ...
#> [6] <p>Die Ausführungen der Bundesregierung im Staatenbericht, so heißt es w ...
#> [7] <p>Sonderpädagoginnen und -pädagogen würden immer noch weitestgehend für ...
#> [8] <p>Die Einführung inklusiver Bildung in Regelschulen sei von erheblichem ...
#> [9] <p><script charset="utf-8" async consent-original-src-_="https://platfor ...
#> [10] <p><script charset="utf-8" async consent-original-src-_="https://platfor ...
#> [11] <p>Der Rechtsanspruch auf inklusive Schulbildung sei in den meisten Bund ...
#> [12] <p><iframe class="wp-embedded-content" sandbox="allow-scripts" security= ...
#> [13] <p> </p>