对于学校项目,我正在尝试创建一个能够从不同网站填写不同表单的Python脚本。
对于某些类型的网站,我无法捕捉到Selenium的表单元素。 例如。在本网站:http://www.top-office.com/jeu 在我用firefox检查页面的地方,输入“Name”框的id为“lastname”,但是Selenium无法获取它。当我显示此页面的html代码时,表单看起来像是从其他页面中包含的内容。
我尝试了getelementbyid,byname,bycssselector等。 我还尝试使用WebDriverWait(驱动程序,5)等待页面完全加载,但它仍然无效。
您有任何解决方案或建议吗?
PS:即使使用javascript,我也无法通过id
获取此元素由于
答案 0 :(得分:1)
您尝试与之互动的元素位于iframe中。您需要使用driver.switch_to_frame()
方法才能将驱动程序切换为专注于该iframe。只有当它切换到iframe时才能与其元素进行交互。
请参阅this post了解如何使用它。您可以使用xpath找到iframe,如下所示://iframe[@src = 'https://adbx.me/grandjeuclubmed/']
。然后,您可以使用我给你的帖子中提到的代码。