大佬教程收集整理的这篇文章主要介绍了如何使用 xpath 获取 HTML 的后续兄弟姐妹或孩子,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一些 HTML 正在尝试抓取。努力学习硒。我需要的是Fashion、Long等词。 我试过了:
localhost:3000
以及介于两者之间的一切。
style = driver.find_elemenT_By_xpath("//strong[text()='Style:']/following::strong").text
style = driver.find_elemenT_By_xpath("//strong[text()='Style:']/following-sibling::strong").text
style = driver.find_elemenT_By_xpath("//strong[contains(.,'Style:')] /preceding-sibling::strong").text
您可以将它们全部存储在如下所示的列表中,并在列表中迭代它们以获取所有网络元素,最后应用 text 方法提取文本。
all_elements = driver.find_elements(By.XPATH,"//div[@class='xxkkk20']/strong")
for ele in all_elements:
print(ele.text)
更新 1:
keys = driver.find_elements(By.XPATH,"//strong")
for key in keys:
print(key.get_attribute('innerHTML'))
,
pairs = driver.find_elements(By.XPATH,'//div[@class="xxkkk20"]').text.split("\n")
for pair in pairs:
texts = pair.split()
print(texts[1])
说明:
首先,您获取父 div
元素中的所有文本。
然后根据那里的 \n
元素将其拆分为 <br>
。
现在你应该有一对像Style: Fashion
这样的文本。
并且由于您只想获得第二个值,因此您需要拆分每一对并获得第二个子字符串。
我建议在对字符串中的第一个和第二个文本之间有一个空格。
如果那里没有空格,你仍然可以最后用 :
分割它,所以它看起来像这样:
pairs = driver.find_elements(By.XPATH,'//div[@class="xxkkk20"]')text.split("\n")
for pair in pairs:
texts = pair.split(":")
print(texts[1])
,
试试这个
textValues = driver.find_elements_by_xpath('//div[@class="xxkkk20"]')text.split("\n")
for txt in textValues:
print(txt.split(":")[1].Strip())
以上是大佬教程为你收集整理的如何使用 xpath 获取 HTML 的后续兄弟姐妹或孩子全部内容,希望文章能够帮你解决如何使用 xpath 获取 HTML 的后续兄弟姐妹或孩子所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。