繁体   English   中英

python硒功能未定义?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM