VSCODE: No debug adapter, can not send 'variables'"
Solution 1
I had this issue when trying to use the integratedConsole
rather than integratedTerminal
or externalTerminal
as part of my Node configuration within launch.json
:
Setting it back to:
"console": "integratedTerminal"
Fixed it. Only took an hour to figure out. See docs for more information.
Solution 2
You can also try:
"outputCapture": "std"
in your launch.json
Solution 3
The reason this happens is that the debugger stops after the code execution ends. Then there is no more debug adapter available to send the variables. What I did is add an extra line on the bottom of the code execution, and set a breakpoint on that. It isn't pretty, but it works.
user1592380
Updated on January 03, 2021Comments
-
user1592380 over 3 years
I'm getting started with pupeteer and node and using vscode in win 10. I'm trying to log into a site and scrape a table. So far I have:
(async () => { const browser = await puppeteer.launch({ headless: false, }); var page = await browser.newPage(); await page.goto('thesite.com/login/'); await page.click(USERNAME_SELECTOR); await page.keyboard.type(CREDS.username); await page.click(PASSWORD_SELECTOR); await page.keyboard.type(CREDS.password); await page.click(BUTTON_SELECTOR); await page.waitForNavigation(); const TABLE_ROW_SELECTOR = '.gv-container.gv-container-133 > table > tbody'; await page.waitForSelector(TABLE_ROW_SELECTOR); await page.waitForSelector(TABLE_ROW_SELECTOR); await page.screenshot({ path: 'example.png' }); const data = await page.evaluate(SELECTOR => document.querySelectorAll(SELECTOR), TABLE_ROW_SELECTOR); await browser.close(); })();
This is mostly working. however in my console I see a list of objects but as far as I can tell no values. Heres the fiest object:
0:Object {} __proto__:Object {constructor: , __defineGetter__: , __defineSetter__: , …} __defineGetter__:function __defineGetter__() { … } __defineSetter__:function __defineSetter__() { … } __lookupGetter__:function __lookupGetter__() { … } __lookupSetter__:function __lookupSetter__() { … } constructor:function Object() { … } hasOwnProperty:function hasOwnProperty() { … } No debug adapter, can not send 'variables' isPrototypeOf:function isPrototypeOf() { … } No debug adapter, can not send 'variables'
What does " No debug adapter, can not send 'variables'" mean?
edit:
I updated to the latest vscode and checked that all extensions were updated. Now when I run LAUNCH PROGRAM
E:\nodejs\node.exe --inspect-brk=27108 index.js Debugger listening on ws://127.0.0.1:27108/e5928c71-370c- 4111-9ec3-77bb2cd85075 For help, see: https://nodejs.org/en/docs/inspector (node:12844) ExperimentalWarning: The fs.promises API is experimental warning.js:18 Array(25) [ElementHandle, ElementHandle, ElementHandle, ElementHandle, ElementHandle, ElementHandle, ElementHandle, ElementHandle, …] index.js:64 length:25 __proto__:Array(0) [, …] concat:function concat() { … } [[Scopes]]:Scopes[0] arguments:TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them
Any idea what this means?