小编kim*_*kim的帖子

无法在 Python 上使用 Selenium 定位弹出窗口上的元素

我想使用以下网址从 Duden 网页中抓取一些元素:https://www.duden.de/rechtschreibung/aussuchen。当我手动查找页面时,不会出现弹出窗口,但是当我在 python 上使用 selenium 时,会出现以下情况:弹出窗口的图像

我已经尝试了很多事情,例如阻止一般弹出窗口,或尝试单击接受按钮。所有这些都不起作用。

我试图找到框架的一个元素并打印一条语句,然后查看它是否可以找到该元素,但这也不起作用。

有谁知道为什么会这样或者我可以尝试更多吗?

这是我尝试过的一些事情:

  • 对于阻塞:

    def getAllWordForms(word):
    
       options = Options()
       profile = webdriver.FirefoxProfile()
       profile.set_preference("dom.disable_open_during_load", False)
       driver = webdriver.Firefox(firefox_profile=profile,options=options, executable_path=os.path.join(driver_location, 'geckodriver'))
    
       main_url = 'https://www.duden.de/rechtschreibung/'
    
       word_url = main_url + '{}'.format(word)
    
       driver.get(word_url)
    
    Run Code Online (Sandbox Code Playgroud)
  • 查看是否可以在弹出框架中找到元素:

    def getAllWordForms(word):
    
       options = Options()
       driver = webdriver.Firefox(options=options, executable_path=os.path.join(driver_location, 'geckodriver'))
    
       main_url = 'https://www.duden.de/rechtschreibung/'
       word_url = main_url + '{}'.format(word)
       driver.get(word_url)
       driver.implicitly_wait(10)
       driver.switch_to.frame(1)
    
       if driver.find_elements_by_class_name('message-button'):
          print('yes')
    
    Run Code Online (Sandbox Code Playgroud)
  • 单击按钮:

      def getAllWordForms(word):
    
         options = Options()
         options.headless = False
         driver = webdriver.Firefox(options=options, executable_path=os.path.join(driver_location, 'geckodriver'))
    
         main_url = …
    Run Code Online (Sandbox Code Playgroud)

python selenium popup blocking

5
推荐指数
1
解决办法
6627
查看次数

标签 统计

blocking ×1

popup ×1

python ×1

selenium ×1