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'))
但是要获得href
和text
,我将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和文本时遇到麻烦的主要内容,如果未能解决你的问题,请参考以下文章