程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何使用 xpath 获取 HTML 的后续兄弟姐妹或孩子大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决如何使用 xpath 获取 HTML 的后续兄弟姐妹或孩子?

开发过程中遇到如何使用 xpath 获取 HTML 的后续兄弟姐妹或孩子的问题如何解决?下面主要结合日常开发的经验,给出你关于如何使用 xpath 获取 HTML 的后续兄弟姐妹或孩子的解决方法建议,希望对你解决如何使用 xpath 获取 HTML 的后续兄弟姐妹或孩子有所启发或帮助;

我有一些 HTML 正在尝试抓取。努力学习硒。我需要的是Fashion、Long等词。 @R_944_9890@:

@H_607_4@localhost:3000

以及介于两者之间的一切。

@H_607_4@ 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 方法提取文本。

@H_607_4@all_elements = driver.find_elements(By.XPATH,"//div[@class='xxkkk20']/strong") for ele in all_elements: print(ele.text)

更新 1:

@H_607_4@keys = driver.find_elements(By.XPATH,"//strong") for key in keys: print(key.get_attribute('innerHTML')) , @H_607_4@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这样的文本。
并且由于您只想获得第二个值,因此您需要拆分每一对并获得第二个子字符串。
我建议在对字符串中的第一个和第二个文本之间有一个空格。
如果那里没有空格,你仍然可以最后用 : 分割它,所以它看起来像这样

@H_607_4@pairs = driver.find_elements(By.XPATH,'//div[@class="xxkkk20"]')text.split("\n") for pair in pairs: texts = pair.split(":") print(texts[1]) ,

试试这个

@H_607_4@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,请注明来意。