在 python 中使用 selenium 时难以从弹出窗口 window 获取元素

Difficulty in getting elements from a pop up window when using selenium in python

我正在尝试从网页中提取作者姓名和他的从属关系(在下面的代码中给出)。在某些情况下,作者的数量可能很大,并且有一个按钮 'Show_all' 我们可以单击它来查看所有作者的姓名。

driver_max_wait_time = 20

driver.get('https://inspirehep.net/literature?sort=mostrecent&size=25&page=1&q=arXiv%3A1311.4916')

# Wait for the element.
WebDriverWait(driver, driver_max_wait_time).until(EC.presence_of_element_located((By.CLASS_NAME, 'result-item-title')))

# click the above element.
element = driver.find_element(By.CLASS_NAME,'result-item-title').click() 

# Get the name of authors and their affiliations. May be in format a(U), b(U) etc.
# a, b are authors.
# U is some university.
WebDriverWait(driver, driver_max_wait_time).until(EC.presence_of_element_located((By.CLASS_NAME, '__InlineList__')))
auth_and_aff_text = driver.find_element(By.CLASS_NAME, '__InlineList__').text

if 'Show All' in auth_and_aff_text:
    print(' Do somehting special')
    WebDriverWait(driver, driver_max_wait_time).until(EC.element_to_be_clickable((By.CLASS_NAME, '__SecondaryButton__'))).click()
    #Now we have clicked the show_all button. 

从片段中可以看出,show_all 按钮被点击了。谁能告诉我如何从这个小 window/popup.

中提取作者姓名

正如有人所问,我正在进一步编辑问题以包含屏幕截图。

第一个 driver.get 命令即 https://inspirehep.net/literature?sort=mostrecent&size=25&page=1&q=arXiv%3A1311.4916 指向下一页。 enter image description here

现在,我们点击论文标题进入下一页。 enter image description here

现在我们点击 show_all 按钮打开小 window。 enter image description here

这就是我卡住的地方。如何从中提取信息 window/popup?

names=[x.text for x in driver.find_elements(By.XPATH,"//div[@class='ant-modal-body']//a[@data-test-id]")]

如果你想要的话,应该在弹出窗口中获取所有 9 个不带括号的名字。

或带括号的

//div[@class='ant-modal-content']//div[@class='di']