在Python中使用Selenium单击具有相同类名的所有元素

在Python中使用Selenium单击具有相同类名的所有元素,第1张

概述我试图点击网页上的所有“喜欢”按钮.我知道如何点击其中一个,但我希望能够点击它们.它们具有相同的类名,但ID不同. 我是否需要创建某种列表并告诉它单击列表中的每个项目?有没有办法写“全部点击”? 这是我的代码看起来像(我删除了登录代码): from selenium import webdriverfrom selenium.webdriver.common.keys import Keys 我试图点击网页上的所有“喜欢”按钮.我知道如何点击其中一个,但我希望能够点击它们.它们具有相同的类名,但ID不同.

我是否需要创建某种列表并告诉它单击列表中的每个项目?有没有办法写“全部点击”?

这是我的代码看起来像(我删除了登录代码):

from selenium import webdriverfrom selenium.webdriver.common.keys import Keysbrowser = webdriver.firefox()browser.set_window_size(650,700)browser.get('http://iconosquare.com/vIEwer.PHP#/tag/searchterm/grID')mobile = browser.find_element_by_ID('open-menu-mobile')mobile.click()search = browser.find_element_by_ID('getSearch')search.click()search.send_keys('input search term' + Keys.RETURN)#this gets me to the page I want to click the likesfitness = browser.find_element_by_CSS_selector("a[href*='fitness/']")fitness.click()#here are the different codes I've trIEd to use to click all of the "like buttons"#trIEd to create a List of all elements with "like" in the ID and click on all of them.  It dIDn't work.like = browser.find_elements_by_ID('like')for x in range(0,len(like)):    if like[x].is_displayed():        like[x].click()#trIEd to create a List by class and click on everything within the List and it dIDn't work.like = browser.find_elements_by_class_name('like_picto_unselected')like.click()AttributeError: 'List' object has no attribute 'click'

我知道我不能点击一个列表,因为它不是一个单独的对象,但我不知道我会怎么做.

非常感谢您的帮助.

解决方法 这很不幸,你有两半的整体,你找不到ID的多个元素,因为ID对于单个元素是唯一的.

所以将你使用的迭代方法与ID和使用类的元素的find相结合,得到:

like = browser.find_elements_by_class_name('like_picto_unselected')for x in range(0,len(like)):    if like[x].is_displayed():        like[x].click()

我强烈怀疑这对你有用.如果没有,请告诉我.

总结

以上是内存溢出为你收集整理的在Python中使用Selenium单击具有相同类名的所有元素全部内容,希望文章能够帮你解决在Python中使用Selenium单击具有相同类名的所有元素所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1193420.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存