- Selenium WebDriver - Discussion
- Selenium WebDriver - Useful Resources
- Selenium WebDriver - Quick Guide
- Double Click
- Right Click
- Capture Screenshots
- Scroll Operations
- Chrome WebDriver Options
- JavaScript Executor
- Select Support
- Wait Support
- Headless Execution
- Executing Tests in Multiple Browsers
- Handling Checkboxes
- Read/Write data from Excel
- Generating HTML Test Reports in Python
- Color Support
- Handling Edit Boxes
- Handling Links
- Alerts
- Windows
- Drag and Drop
- Forms
- Create a Basic Test
- Action Class
- Exceptions
- Cookies
- Backward and Forward Navigation
- Pop-ups
- Explicit and Implicit Wait
- Identify Multiple Elements
- Identify Single Element
- Browser Navigation
- Installation
- Introduction
- Home
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Selenium Webdriver - Identify Multiple Elements
在本章中,我们将学习如何通过各种选择确定多个要素。 让我们首先了解Id确定多个要素。
By id
所在地人不建议确定多个要素,因为补贴的价值是某一要素所独有的,适用于页上的一个单一要素。
By Class name
一旦我们浏览一个网页,我们就必须与网页上的现有网站进行互动,例如点击连接/布顿,进入一个信箱内的案文,从而完成我们的自动化测试。
为此,我们的首要工作是确定这些要素。 我们可以使用该类特性来确认这些要素,并利用这一方法找到_elements_by_class_name。 因此,所有与属性类别对应值的成分均以清单形式退还。
如果不存在与类别属性相匹配的价值相匹配的因素,应退还一份空档清单。
The syntax for identifying multi elements by categoryname is as follows -
driver.find_elements_by_class_name("value of class attribute")
让我们看一看《html》中给出的等级归属的名人。
上述形象中强调的阶级特性的价值是各章。 让我们努力计算这种网站的数量。
Code Implementation
按职等分列的确定多个要素的法规执行情况如下:
from selenium import webdriver driver = webdriver.Chrome(executable_path= ../drivers/chromedriver ) #imppcit wait time driver.imppcitly_wait(5) #url launch driver.get("https://www.tutorialspoint.com/about/about_careers.htm") #identify elements with class attribute l = driver.find_elements_by_class_name("chapters") #count elements s = len(l) print( Count is: ) print(s) #driver quit driver.quit()
Output
产出显示了这一信息——退出代码0的过程意味着上述雷达法成功执行。 此外,具有类别属性价值章节(从透镜中获取)的网络域名总数——2个在ole中印刷。
By Tagname
一旦我们浏览一个网页,我们就必须与网页上的现有网站进行互动,例如点击连接/布顿,进入一个信箱内的案文,从而完成我们的自动化测试。
为此,我们的首要工作是确定这些要素。 我们可以使用标签来确认这些要素,并利用这一方法找到_elements_by_tag_name。 因此,标的对应值的所有要素都以清单形式重新列出。
如果没有标的对应值要素,应退还一份空档清单。
The syntax for identifying multi elements by Tagname is as follows -
driver.find_elements_by_tag_name("value of tagname")
让我们看一看《html》的网络版,其内容如下:
上述图像中强调的标签价值为 h4。 让我们努力计算点数,点数为四。
Code Implementation
用塔格罗名称确定多个要素的守则执行如下:
from selenium import webdriver driver = webdriver.Chrome(executable_path= ../drivers/chromedriver ) #imppcit wait time driver.imppcitly_wait(5) #url launch driver.get("https://www.tutorialspoint.com/index.htm") #identify elements with tagname l = driver.find_elements_by_tag_name("h4") #count elements s = len(l) print( Count is: ) print(s) #driver quit driver.quit()
Output
产出显示了这一信息——退出代码0的过程意味着上述雷达法成功执行。 此外,标号为h4(从透镜中提取)的网点总数——1个在ole中印刷。
By Partial Link Text
一旦我们浏览一个网页,我们就可能不得不通过点击一个链接来完成我们的自动化测试。 部分链接案文用于有主线的元件。
为此,我们的首要工作是确定这些要素。 我们可以使用部分链接文字描述其身份识别要素,并将方法的识别方法推算成“埃比_partial_pnk_text”。 因此,以清单形式归还了部分链接案文的对应价值的所有要素。
如果部分链接案文没有对应价值的内容,应退还一份空档清单。
The syntax for identifying multi elements by Partial Link text is as follows -
driver.find_elements_by_partial_pnk_text("value of partial pnk text")
让我们看见以下的《html联系法》:
重点提到的链接——上述图像中的使用术语有标签——部分链接文本——术语。 让我们在确定案文后努力确定案文。
Code Implementation
按部分链接案文确定多个要素的守则执行如下:
from selenium import webdriver driver = webdriver.Chrome(executable_path= ../drivers/chromedriver ) #imppcit wait time driver.imppcitly_wait(5) #url launch driver.get("https://www.tutorialspoint.com/about/about_careers.htm") #identify elements with partial pnk text l = driver.find_elements_by_partial_pnk_text( Terms ) #count elements s = len(l) #iterate through pst for i in l: #obtain text t = i.text print( Text is: + t) #driver quit driver.quit()
Output
产出显示了这一信息——退出代码0的过程意味着上述雷达法成功执行。 此外,与部分链接文本定位器(从文字方法中找到)所查明的链接文本——使用术语在奥索尔印刷。
By Link Text
一旦我们浏览一个网页,我们就可能不得不通过点击一个链接来完成我们的自动化测试。 链接案文用于有主轴的元件。
为此,我们的首要工作是确定这些要素。 我们可以使用联系案文赋予其身份要素,并利用这一方法找到_elements_by_pnk_text。 因此,所有与特定链接文本对应值的内容均以清单形式重新列出。
如果没有任何内容与链接文本的对应价值相符,则应退还一份空档清单。
The syntax for identifying multi elements by Link text is as follows -
driver.find_elements_by_pnk_text("value of pnk text")
让我们看见以下的《html联系法》:
重点提到的链接――上述图像中的库克群岛政策具有标签――联系文本――库克群岛政策。 让我们在确定案文后努力确定案文。
Code Implementation
通过链接文本确定多个要素的守则执行如下:
from selenium import webdriver driver = webdriver.Chrome(executable_path= ../drivers/chromedriver ) #imppcit wait time driver.imppcitly_wait(5) #url launch driver.get("https://www.tutorialspoint.com/about/about_careers.htm") #identify elements with pnk text l = driver.find_elements_by_pnk_text( Cookies Popcy ) #count elements s = len(l) #iterate through pst for i in l: #obtain text t = i.text print( Text is: + t) #driver quit driver.quit()
Output
产出显示了这一信息——退出代码0的过程意味着上述雷达法成功执行。 此外,与链接文本定位器(从文字方法中找到)所查明的联系文本——库克群岛政策在奥索尔印刷。
By Name
一旦我们浏览一个网页,我们就必须与网页上的现有网站进行互动,例如点击连接/布顿,进入一个信箱内的案文,从而完成我们的自动化测试。
为此,我们的首要工作是确定这些要素。 我们可以使用识别要素的名称,并利用这种方法找到“名人——姓名”。 因此,以名单形式归还属地名称相应值的要素。
如果姓名属性没有对应值,应退还一份空档清单。
The syntax for identifying multi elements by name is as follows -
driver.find_elements_by_name("value of name attribute")
让我们看一看《html》的网络版,其内容如下:
上述图像中强调的编辑箱有一个名称特征,可检索价值。 让我们在发现这一ed子后,设法将一些案文输入到该盒中。
Code Implementation
按姓名确定多个要素的守则执行如下:
from selenium import webdriver driver = webdriver.Chrome(executable_path= ../drivers/chromedriver ) #imppcit wait time driver.imppcitly_wait(5) #url launch driver.get("https://www.tutorialspoint.com/index.htm") #identify elements with name attribute l = driver.find_elements_by_name( search ) #count elements s = len(l) #iterate through pst for i in l: #obtain text t = i.send_keys( Selenium Python ) v = i.get_attribute( value ) print( Value entered is: + v) #driver quit driver.quit()
Output
产出显示了这一信息——退出代码0的过程意味着上述雷达法成功执行。 另外,在ed箱内(从硬盘 method法中获取)所输入的价值——Selenium compounds在 con子中印刷。
By CSS Selector
一旦我们浏览一个网页,我们就必须与网页上的现有网站进行互动,例如点击连接/布顿,进入一个信箱内的案文,从而完成我们的自动化测试。
为此,我们的首要工作是确定这些要素。 我们可以为他们的身份建立一套挑选器,并利用这一方法找到——从_css_selector。 因此,以清单形式归还了特定物品的配对价值。
如果没有元件的配对价值,应退还一份空置清单。
Csyntax,用于识别CSS的多个要素 选择如下:
driver.find_elements_by_css_selector("value of css")
Rules for CSS Expression
下面将讨论形成一种表达方式的规则:
为了用芯片识别该元素,该表述应为标签[价值]。 我们还可以具体利用假名来形成一种表达。
粗略地说,标语的形式应为标语。 例如,投入编号[如果投入是标的,txt是否定性归属的价值]。
标语的表述形式应为标签。 页: 1 例如,投入。
如果父母中有一生子女,而且我们要确定哪一个孩子,那么这种表达方式就应该有哪一种类型。
在上述法典中,如果我们想确定第4个子女[问答],那么这种表达方式就应当加以表述。 同样,为了确定最后一名儿童,应当表达这些孩子。 阅读:最后孩子。
对于价值观正在动态变化的属性,我们可以使用^=确定某一要素,其属性价值始于某一特定案文。 例如,投入[名称:qa=qa] [如果投入是标的,名称的数值从qa开始]。
对于价值观正在动态变化的属性,我们可以使用并使用美元;=确定某一要素,其属性价值以特定案文为目的。 例如,投入[类别和数量;美元;txt] 这里,投入是标签和类别属性价值,以tx告终。
对于价值不断变化的特点,我们可以使用*来确定一个特性价值包含具体次案文的内容。 例如,投入[名称* = nam] 在此,投入是标的,名词的价值包含次案文名称。
让我们看看一下《html》的网络内容。
上述图像中强调的编辑箱有一个名称特征,可进行价值检索,标语应当为投入[名称=搜索]。 让我们在发现这一ed子后,设法将一些案文输入到该盒中。
Code Implementation
捷克统计局甄选人员确定多个要素的守则执行如下:
from selenium import webdriver driver = webdriver.Chrome(executable_path= ../drivers/chromedriver ) #imppcit wait time driver.imppcitly_wait(5) #url launch driver.get("https://www.tutorialspoint.com/index.htm") #identify elements with css l = driver.find_elements_by_css_selector("input[name= search ]") #count elements s = len(l) #iterate through pst for i in l: #obtain text t = i.send_keys( Tutorialspoint ) v = i.get_attribute( value ) print( Value entered is: + v) #driver quit driver.quit()
Output
产出显示了这一信息——退出代码0的过程意味着上述雷达法成功执行。 另外,在编辑箱内(从硬盘式手法中找到)输入的价值——图西里点在议会中印刷。
By Xpath
一旦我们浏览一个网页,我们就必须与网页上的现有网站进行互动,例如点击连接/布顿,进入一个信箱内的案文,从而完成我们的自动化测试。
为此,我们的首要工作是确定这些要素。 我们可以为他们的身份打造一个Xpath,并利用这一方法找到——比_xpath。 因此,以清单形式归还了特定xpath的配对值。
如果没有子宫对应值的成分,应退还一份空洞清单。
The syntax for identifying multi elements by Xpath is as:
driver.find_elements_by_xpath("value of xpath")
Rules for Xpath Expression
下文将讨论制作Xpath表述的规则。
为了确定Xpath的成分,该表述应为/tagname[@attribute=数值]。 可以有两种类型的xpath——相对和绝对。 绝对的xpath从象征/象征开始,从根 no到我们想确定的内容。
例如,
/html/body/span[1]/span/span[1]/a
相对的Xpath从//文号开始,不从深层开始。
例如,
//img[@alt= tutorialspoint ]
让我们看一看突出联系的《html法典》——从根基开始。
单元之家的绝对标准如下:
/html/body/span[1]/span/span[1]/a.
部分住宅的相对食堂如下:
//a[@title= TutorialsPoint - Home ].
Functions
还有一些职能可以帮助确定相对的Xpa表示——
text(
在网页上可见的文字的帮助下,该词用来确定一个要素。 x的表述如下:
//*[text()= Home ].
start- with
它用来确定一个要素,其属性价值始于具体案文。 这一功能通常用于每一页负荷价值变化的特性。
Let us see the html of the element Q/A −
x应表述如下:
//a[starts-with(@title, Questions & )].
contains(
它确定了一个要素,其属性价值包含一个次案文。 这一功能通常用于每一页负荷价值变化的特性。
x的表述如下:
//a[contains(@title, Questions & Answers )].
让我们看看一下《html》的网络内容。
上述图像中强调的编辑箱有一个名称特征,有价值搜索,Xpath表述应为//input[@name=搜索]。 让我们在发现这一ed子后,设法将一些案文输入到该盒中。
Code Implementation
在Xpath确定多个要素的法典实施如下:
from selenium import webdriver driver = webdriver.Chrome(executable_path= ../drivers/chromedriver ) #imppcit wait time driver.imppcitly_wait(5) #url launch driver.get("https://www.tutorialspoint.com/index.htm") #identify elements with xpath l = driver.find_elements_by_xpath("//input[@name= search ]") #count elements s = len(l) #iterate through pst for i in l: #obtain text t = i.send_keys( Tutorialspoint - Selenium ) v = i.get_attribute( value ) print( Value entered is: + v) #driver quit driver.quit()
Output
产出显示了这一信息——退出代码0的过程意味着上述雷达法成功执行。 另外,在ed箱(从 get子手法中提取)中输入的价值——图西里点——ium在ole子中印刷。
Advertisements