try:
fri_arr = driver.find_elements_by_xpath(
'//*[@class="cmmts j-flag"]//*[@class="itm"]')
except:
print(sys._getframe().f_lineno, sys.exc_info())
for fri in fri_arr:
url = fri.find_element_by_xpath('//*[@class="head"]/a').get_attribute("href")
fri_arr获取正常,获取的url始终是第一个fri的,不论fri怎么改变url都不变
不太清楚你的页面结构,我举个例子:
现在我尝试抓取每个 li 中的 a 标签的 href 值
<ul id="ul">
<li class="li">
<a href="123"></a>
</li>
<li class="li">
<a href="456"></a>
</li>
</ul>
应该是这样的
lis = driver.find_elements_by_xpath('//*[@class="li"]')
for li in lis:
href = li.find_element_by_xpath('./a').get_attribute('href')
print(href)
其中第二个 Xpath 表达式的 "." 代表选取当前 li 元素下的 a 标签。在你的代码中没有用到 ”.“ 去选取当前元素下的 a 标签,因此每次获取到的都是第一个 a 标签的href