Поэтому я пытаюсь внедрить скрипт для запуска на любой странице, используя addScriptToEvaluateOnNewDocument
на chrome 79, но, похоже, он не работает.
Я использую гем ruby chrome_remote, который дает довольно простой c доступ к CDP.
Вот пример ruby:
scpt =<<EOF
window.THIS_WAS_SET = 1
EOF
ChromeRemote.client.send_cmd 'Page.addScriptToEvaluateOnNewDocument',{source: scpt}
ChromeRemote.client.send_cmd "Page.navigate", url: "http://localhost:4567/test"
Затем я запускаю chrome с --remote-debugging-port=9222
Page.addScriptToEvaluateOnNewDocument
всегда будет возвращать {"identifier"=>"1"}
( даже если я вызываю его несколько раз, скажем, с разными сценариями).
И когда я открываю консоль на открытой вкладке в Chrome (что работает, поэтому я знаю, что CDP в целом работает), и проверяю значение window.THIS_WAS_SET
, оно не определено.
Есть ли способ проверить, была ли команда отправлена в браузер, например, журнал в браузере, в котором она была получена? Любой способ увидеть, какие сценарии были введены? Почему каждый вызов всегда возвращает ScriptIdentifier
из 1, что кажется проблематичным c?
У кого-нибудь работает подобный пример?