Selenium Python:无法通过id / name / css选择器获取元素

时间:2016-09-27 19:26:12

标签: javascript jquery python selenium

对于学校项目,我正在尝试创建一个能够从不同网站填写不同表单的Python脚本。

对于某些类型的网站,我无法捕捉到Selenium的表单元素。 例如。在本网站:http://www.top-office.com/jeu 在我用firefox检查页面的地方,输入“Name”框的id为“lastname”,但是Selenium无法获取它。当我显示此页面的html代码时,表单看起来像是从其他页面中包含的内容。

我尝试了getelementbyid,byname,bycssselector等。 我还尝试使用WebDriverWait(驱动程序,5)等待页面完全加载,但它仍然无效。

您有任何解决方案或建议吗?

PS:即使使用javascript,我也无法通过id

获取此元素

由于

1 个答案:

答案 0 :(得分:1)

您尝试与之互动的元素位于iframe中。您需要使用driver.switch_to_frame()方法才能将驱动程序切换为专注于该iframe。只有当它切换到iframe时才能与其元素进行交互。

请参阅this post了解如何使用它。您可以使用xpath找到iframe,如下所示://iframe[@src = 'https://adbx.me/grandjeuclubmed/']。然后,您可以使用我给你的帖子中提到的代码。