ChromeHeadless 不会检索浏览器开发工具中看到的页面元素
在此页面中:
我可以看到一个按钮“添加到购物车”文本,我也可以在开发工具中看到它。
但是,当 ChromeHeadless 使用 selenium 检索相同的页面源并且我的脚本搜索它时,此文本不存在。
我尝试在浏览器中选择显示页面源,源也没有“添加到购物车文本”
此外,我使用卷曲来获取页面,“添加到购物车”也不在返回的页面源中。
我做错了什么?
页面隐藏了按钮吗?
我如何检查它是否存在,以进行产品可用性检查?
In this page :
I can see a button with "Add to Cart" text , I can also see it in dev tools.
But when the same page source is retrieved by ChromeHeadless using selenium, and my script searches for it, this text is not present.
I tried with selecting show page source in the browser, the source too did not have the "Add To Cart text"
Further I used a curl to GET page, "Add To Cart" wasn't in the returned page source either.
What am I doing wrong?
is the page hiding the button?
How can I check for its presence, for product availability check?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您要查找的元素位于影子 DOM 内部。您需要首先访问影子根。如果不进行一些尝试和错误,很难准确地了解 DOM 中发生的情况,但类似这样:
More info on Shadow DOM &硒 — https://titusfortner.com/2021/11/ 22/shadow-dom-selenium.html
The elements you are looking for are inside the shadow DOM. You need to access the shadow root first. Hard to see exactly what is going on in the DOM without some trial and error, but something like this:
More info on Shadow DOM & Selenium — https://titusfortner.com/2021/11/22/shadow-dom-selenium.html