Python selenium xpath,在正确地复制/保存特定类元素内的html和文本时遇到麻烦

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python selenium xpath,在正确地复制/保存特定类元素内的html和文本时遇到麻烦相关的知识,希望对你有一定的参考价值。

https://i.stack.imgur.com/P4bRZ.png

[尝试通过python selenium xpath检查网页,该页面有二十个标记为"lh-copy truncate silver"的元素,我需要保存类元素中的信息,'link i need''info I need'均要保存。但是,当我运行代码时,它给我的结果只说"None"二十次,这是该类元素在页面上显示的数量。

这里是我到目前为止的代码:

generic_variable = browser.find_elements_by_xpath('//*[@class="lh-copy truncate silver"]')

#for ii in generic_variable:
    #print(ii.get_attribute('inner_html'))

这里是打印出二十次的结果:

None

编辑:你们中的一些人正在询问错误消息,没有错误消息。它打印'None' 20次,这是该元素在页面上出现的确切次数,因此它知道该元素只是没有从该元素中提取数据。

答案

您在属性'inner_html'的名称中输入了错误。它必须是'innerHTML'(类似'outerHTML'

generic_variable = browser.find_elements_by_xpath('//*[@class="lh-copy truncate silver"]')

for ii in generic_variable:
    print(ii.get_attribute('innerHTML'))

但是要获得hreftext,我将ii与另一个xpath和相对路径('.//')结合使用

((并且find_element_...在单词s的末尾没有element-仅获得一个元素)

generic_variable = browser.find_elements_by_xpath('//*[@class="lh-copy truncate silver"]')

for ii in generic_variable:

    link = ii.find_element_by_xpath('.//a').get_attribute('href')

    text = ii.find_element_by_xpath('.//span').text

    print(link, text)

以上是关于Python selenium xpath,在正确地复制/保存特定类元素内的html和文本时遇到麻烦的主要内容,如果未能解决你的问题,请参考以下文章

如何使用selenium和python创建具有相同xpath的元素列表?

Python+Selenium学习-Xpath的使用

selenium + Python -- xpath定位

python+selenium基础之XPATH定位

python+selenium元素定位之XPath学习01

Python+Selenium基础篇之4-XPath的使用