【发布时间】:2023-03-24 15:18:01
【问题描述】:
我正在使用 Selenium WebDriver 从许多网页中抓取信息。我想知道是否可以通过 CSS 选择器选择多个子元素。 HTML 结构如下所示:
<section id="education">
<div class="degree">
<h3 class="school"> School1 </h3>
<p class="year"> 2002-2008 </p>
</div>
<div class="degree">
<h3 class="school"> School2 </h3>
</div>
</section>
在这种情况下,我想选择具有相应年份范围的学校名称。但如果我只是使用:
driver.find_elements_by_css_selector('section[id="education"] div[class="school"]')
driver.find_elements_by_css_selector('section[id="education"] p[class="year"]')
我会得到两个列表:[School1, School2] 和['2002-2008'],我无法分辨出哪个学校对应于'2002-2008' 的年级。那么,是否可以将相应的学校名称和年份范围结合在一起呢?如果有其他方法可以绕过它,那也会有所帮助。
【问题讨论】:
标签: python selenium css-selectors