chrome 的 DevTools 远程调试在 headless-chrome 下无法正常工作

DevTools remote debugging at chrome not working normally with headless-chrome

我想调试无头 chrome 没有浏览器 UI 像 this reference

我的chrome版本是84.0.4147.105,chrome驱动版本也是84.

当我运行 headless-chrome时,cmd

出现以下提示
DevTools listening on ws://127.0.0.1:9224/devtools/browser/~~

并且当我在chrome输入127.0.0.1:9224时,直到昨天它都正常工作。

但是今天,当我输入地址时,下面的字符串出现了。

我该如何解决这个问题?前后代码都没有改过

���TQo�0~ϯ���$���li51����manri̜8�������m::��8>�w�ww�%�)��K .�ӏ��5QPJ$�e�Z�j����K�Y���?hI���Ke� ����o-+2!a�DD&���v�)� �5�غ�Qt�yyS��#HH��g���x�t1W>s'��O�B�}�0p�Js��:�; ���%�3!�YO1X�bk�4|�����3��j���n��c'��k�̂���͸'�H�tq��KfKI�z^����|����������v��h4{��wz�\��(n���gu Uv�;g9��Qn��\W^=X�wg�)���de���~��0�L�M ��S����}�5���)r"B�b�Ԃ�ҟs�;�S: ��r� r�r_S�J�{���cLZ�ʒjP-�ʹzu���o��愈���L��л����m�ᖀ��e������aK���ma��v�x��'�-���u�6��<�q��9 �ϵ�������)O?l�Y�D���㽷��w�&N���4�K�>��l�l�K��-�O^�G1��w�jݕ�.��B�N���Qwu���6^��pr��w��,���GG��=2���Lh?��'+;�&�aSdH���=e�}�����5�X=�8;��ꄢ��i��AB-�cu��/:Y

我要的是下图

我和你一模一样的墙,同样的乱码回复。我认为这是一个错误 - 即使在重新启动后它也没有回来所以我正在静静地等待补丁。

我现在刚刚进行了更详细的查看 - 猜测 - 它似乎与打开的 chrome 个实例有关.... 当我使用远程调试标签启动新的 chrome 时,它附加到现有的 chrome 而不是在它自己的浏览器中。

我做了什么:

运行 这两个命令关闭所有 chrome/chromedriver 实例(如果您使用 chrome 则包括这个 - 所以使用其他东西或将其复制到记事本):

taskkill /F /IM chrome.exe
taskkill /F /IM chromedriver.exe

然后运行:

chrome --headless --remote-debugging-port=9222 --disable-gpu https://www.google.com

然后- 打开一个新的 window,对我来说,我能够再次连接。 在此处连接:http://127.0.0.1:9222/

得到这个...这与我以前看到的不同。 尽管我 运行 没有头,但我还有我的另一个 windows(包括这条消息!)和我的扩展。

选择堆栈溢出 window 只是为了好玩只是为了让我在遥控器的正文中键入此回复 window:

当我现在键入此内容时,我的鼠标已被锁定为远程光标“blob” - 因此它仍然存在一些问题。然而,这对我来说很有用,可以让它重新上线。

Chrome版本: Version 84.0.4147.105 (Official Build) (64-bit)

  1. 在新标签页中打开 chrome://inspect

2.click 在设备部分的配置按钮上(参考下图)

click to see image

  1. 在目标发现设置中添加您的主机地址,然后单击完成

  2. 现在您可以在 远程目标 部分下看到远程 chrome 页面(参考下图)

click to see image

点击里面的inspect。现在您可以检查和调试无头 chrome 页面