【问题标题】:How to allow access to the browsers geolocation API using slimerJS?如何允许使用 slimerJS 访问浏览器地理定位 API?
【发布时间】:2019-07-31 14:23:58
【问题描述】:

我正在尝试使用 SlimerJS 访问网站。 在网站上,如果不允许访问浏览器的地理定位 API,您将无法继续。它是在单击允许时出现的弹出窗口。

有什么方法可以允许并使用 SlimerJS 为该网站提供地理位置?

【问题讨论】:

  • @Marco Danke fur deinen Edit, ich wuste nicht das es "geolocation API" heisst, hast du eine idee wie man das macht? Ich habe schon sehr viel online gekuken und nix gefunden..
  • 不,对不起。我不知道答案,但我可以确认谷歌搜索解决方案对我也不起作用:) 赞成票是我的,因为我也对解决方案感兴趣。但是,您可以阅读更多关于您的浏览器地理定位 API here

标签: javascript browser geolocation slimerjs


【解决方案1】:

您似乎不能只告诉浏览器发送特定位置。但是您被测网页的代码使用 window.navigator 对象来获取位置。因此,如果您设法以某种方式更改或伪造window.navigator.geolocation,您的问题应该得到解决。

检查this answer,Artjom 指出如何使用 casper.js 代理 window.navigator.appName 对象。 window.navigator.geolocation 对象应该可以适应您的问题。

您也可能对这个issue 感兴趣。

【讨论】:

  • Marco,感谢您的努力,但我并没有尝试使用代理更改我的位置,我试图授予浏览器访问我的位置的权限.. 允许访问弹出窗口
  • 那么恐怕,SlimerJS 目前公开的控制浏览器的功能太有限了,无法实现这种行为。 SlimerJS 主要通过将 JS 注入被测网页来工作,如果您不愿意这样做,您可能应该从 SlimerJS 转向一个可以让您更好地控制浏览器实现的框架。 Selenium 将是一个不错的候选人。
  • 是的,我认为你是对的 Marco、Selenium 还是 CEFSharp? cefsharp.github.io Selenium 我从来没有用过,我需要从头开始学习如何使用它..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多