[英]python selenium function not defined?
请任何人可以帮助我。 它说我的功能没有定义。
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://www.speedyshare.com/")
frame_name = driver.find_elements_by_xpath("/html/frameset/frame").get_attribute("name")
driver.switch_to.frame(frame_name)
elem = driver.find_element_by_id("selectfilebox")
elem.click()
我得到了这个追溯。
Traceback (most recent call last):
File "/home/ro/selem.py", line 6, in <module>
frame_name = driver.find_elements_by_xpath("/html/frameset/frame").get_attribute("name")
AttributeError: 'list' object has no attribute 'get_attribute'
>>>
编辑:
当我跑步
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://www.speedyshare.com/")
driver.switch_to.frame(0)
elem = driver.find_element_by_id("selectfilebox")
elem.click()
和
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://www.speedyshare.com/")
frame_name = driver.find_elements_by_xpath("/html/frameset/frame").get_attribute("name")
driver.switch_to.frame(frame_name)
elem = driver.find_element_by_id("selectfilebox")
elem.click()
它们都保持运行且没有回溯,但是鼠标停留在地址栏中。
虽然@Kevin和@jonrsharpe点是完全正确的,但您甚至不需要以下行:
frame_name = driver.find_elements_by_xpath("/html/frameset/frame").get_attribute("name")
您只需传递框架名称即可切换到:
driver.switch_to.frame("frame_name")
或者,框架索引(看起来只是页面上的第一个iframe):
driver.switch_to.frame(0)
硒webdriver将负责定位框架并切换到框架。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.