我正在尝试从网站复制 href 值,html 代码如下所示:
<p class="sc-eYdvao kvdWiq">
<a href="https://www.iproperty.com.my/property/setia-eco-park/sale-
1653165/">Shah Alam Setia Eco Park, Setia Eco Park
</a>
</p>
我试过了,driver.find_elements_by_css_selector(".sc-eYdvao.kvdWiq").get_attribute("href")
但它回来了'list' object has no attribute 'get_attribute'
。使用driver.find_element_by_css_selector(".sc-eYdvao.kvdWiq").get_attribute("href")
返回的None
. 但是我不能使用 xpath,因为该网站有 20+ 个 href,我需要全部复制。使用 xpath 只会复制一个。
如果有帮助,所有 20 多个 href 都归入同一类,即sc-eYdvao kvdWiq
.
最终,我想复制所有 20+ 个 href 并将它们导出到 csv 文件。
感谢任何可能的帮助。
如果有多个元素,您需要 driver.find_elements。这将返回一个列表。对于 css 选择器,您要确保为那些具有子 href 的类选择
elems = driver.find_elements_by_css_selector(".sc-eYdvao.kvdWiq [href]")
links = [elem.get_attribute('href') for elem in elems]
您可能还需要一个等待条件,以便 css 选择器定位的所有元素都存在。
elems = WebDriverWait(driver,10).until(EC.presence_of_all_elements_located((By.CSS_SELECTOR, ".sc-eYdvao.kvdWiq [href]")))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句