Я пытаюсь настроить фиктивную геолокацию с помощью хрома без поддержки через CDP (протокол отладки chrome) и предоставить разрешение «геолокация» для определенной или всех областей сайта. В настоящее время у меня возникают некоторые проблемы. Даже после предоставления разрешения на определение местоположения хоста на тестовом веб-сайте все еще говорится, что он запрашивает у пользователя доступ, например, через всплывающее окно разрешения доступа к расположению / уведомлениям и т. Д.
Может ли кто-нибудь сказать мне, является ли их проблема в порядке команд, используемых для установки фиктивного расположения с помощью cdp, или если это какие-либо другие проблемы, связанные с аргументами chromedriver / chrome, которые не позволяют или не позволяют этой функции быть доступной набез головы?
вот пример того, что я сейчас пробую: (https://str8up.media/test.txt)
print "devtools setting up geoapi auths"
command = {
"id": 5,
"method": "Browser.grantPermissions",
"params": {
"origin": 'https://browserleaks.com',
"permissions": ["geolocation"]
}
}
ws.send(json.dumps(command))
result = ws.recv()
print "Received geoapi auths result'%s'" % result
print "devtools changing geoapi"
command = {
"id": 6,
"method": "Page.setGeolocationOverride",
"params": {
"latitude": 27.1752868,
"longitude": 78.040009,
"accuracy": 100
}
}
ws.send(json.dumps(command))
result = ws.recv()
print "Received geolocation change result'%s'" % result
print "[!] devtools changing page..."
command = {
"id": 14,
"method": "Page.navigate",
"params": {
"url": "https://browserleaks.com/geo",
"referrer": "http://finallyexamplereferer.com",
}
}
ws.send(json.dumps(command))
result = ws.recv()
print "pagechange response: %s" % result
работает с:
Linux 4.9.0-8-amd64 #1 SMP Debian 4.9.144-3.1 (2019-02-19) x86_64 GNU/Linux
ChromeDriver 80.0.3957.0 (60b069c753ac47f4d444b8ac1f08a22c32a131e1-refs/heads/master@{#711741})
Chromium 80.0.3957.0
Любая помощь будеточень ценю, так как я изо всех сил пытаюсь заставить это работать.
Спасибо