单击 link 会生成空白页面
clicking link results in empty page
我制作了一个可以在无头模式或浏览器模式下运行的水豚脚本。它尝试在 wiki 中创建一个页面。为此,请单击菜单栏中的 'Add',然后单击打开的下拉菜单中的 'Page'。
这适用于浏览器模式。但是在无头模式下(webkit),点击 link 'Page' 后,返回一个空页面。谁能告诉我为什么会这样?
在我的代码中,我有这个
click_link 'Add'
if ENV['BROWSER'] == 'headless'
wait_for_ajax
verbose( "headless add page", 3)
p page.html
lnk = all( :css, "#createPageLink").first
p lnk
wait_for_ajax
lnk.click
else
verbose( "klik Page", 3)
click_link 'Add a Page'
lnk = all( :css, "#createPageLink").first
p lnk
lnk.click
end
wait_for_ajax
p page.html
无头模式下的输出
PAGEHTML</div></body></html>"
#<Capybara::Node::Element tag="a" path="/html/body[@id='com-atlassian-confluence']/div[@id='full-height-container']/div[@id='splitter']/div[@id='splitter-content']/div[@id='main']/div[@id='main-header']/div[@id='navigation']/ul/li[3]/div/ul[@id='add-menu-link-space']/li[1]/a[@id='createPageLink']">
""
所以 link 是 找到的(p lnk 显示 Capybara::Node::Element),但是点击 links returns 一个空页面,而当浏览器单击 link 时,我得到 link 后面的 html。
我希望你能告诉我我忽略了什么....
路德
Capybara-webkit 已过时,基本上等同于 8 年前的浏览器。它很可能不再支持在您与之交互的页面上使用的 JS 和 CSS。如果您需要无头支持,最好不要使用 capybara-webkit
而是在无头模式下使用带有 chrome 的 selenium,或者通过 CDP 驱动程序直接使用 Chrome 之一(喜欢 apparition) 在过去几年中与任何网站互动 written/updated。
我制作了一个可以在无头模式或浏览器模式下运行的水豚脚本。它尝试在 wiki 中创建一个页面。为此,请单击菜单栏中的 'Add',然后单击打开的下拉菜单中的 'Page'。
这适用于浏览器模式。但是在无头模式下(webkit),点击 link 'Page' 后,返回一个空页面。谁能告诉我为什么会这样?
在我的代码中,我有这个
click_link 'Add'
if ENV['BROWSER'] == 'headless'
wait_for_ajax
verbose( "headless add page", 3)
p page.html
lnk = all( :css, "#createPageLink").first
p lnk
wait_for_ajax
lnk.click
else
verbose( "klik Page", 3)
click_link 'Add a Page'
lnk = all( :css, "#createPageLink").first
p lnk
lnk.click
end
wait_for_ajax
p page.html
无头模式下的输出
PAGEHTML</div></body></html>"
#<Capybara::Node::Element tag="a" path="/html/body[@id='com-atlassian-confluence']/div[@id='full-height-container']/div[@id='splitter']/div[@id='splitter-content']/div[@id='main']/div[@id='main-header']/div[@id='navigation']/ul/li[3]/div/ul[@id='add-menu-link-space']/li[1]/a[@id='createPageLink']">
""
所以 link 是 找到的(p lnk 显示 Capybara::Node::Element),但是点击 links returns 一个空页面,而当浏览器单击 link 时,我得到 link 后面的 html。
我希望你能告诉我我忽略了什么....
路德
Capybara-webkit 已过时,基本上等同于 8 年前的浏览器。它很可能不再支持在您与之交互的页面上使用的 JS 和 CSS。如果您需要无头支持,最好不要使用 capybara-webkit
而是在无头模式下使用带有 chrome 的 selenium,或者通过 CDP 驱动程序直接使用 Chrome 之一(喜欢 apparition) 在过去几年中与任何网站互动 written/updated。