我试图欺骗chromedriver让它相信它在不同的城市运行.在正常情况下,这可以很容易地手动完成,如快速图表所示

然后,当完成谷歌搜索时,使用新坐标,并显示通常来自该位置的结果.当您查看Google搜索页面的底部时,您可以确认这是有效的
.
但是,Selenium只能控制浏览器显示的内容,而不能控制浏览器本身.我无法告诉Selenium自动点击更改坐标所需的按钮.我尝试了这里发布的解决方案,但这不适用于Python,即使在我尝试调整脚本后,似乎也没有发生任何事情.
是否有一个可能有效的browser.execute_script()参数,或者这是改变地理位置的错误方法?
小智 1
尝试下面的代码:
driver.execute_script("window.navigator.geolocation.getCurrentPosition=function(success){"+
"var position = {\"coords\" : {\"latitude\": \"555\",\"longitude\": \"999\"}};"+
"success(position);}");
print(driver.execute_script("var positionStr=\"\";"+
"window.navigator.geolocation.getCurrentPosition(function(pos){positionStr=pos.coords.latitude+\":\"+pos.coords.longitude});"+
"return positionStr;"))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
980 次 |
| 最近记录: |