2017-12-20 8 views
0

Ich möchte verfolgen geändert DOM wie Mutationobserver in Headless Chrom. Also lerne ich Puppenspieler-Bibliothek, aber ich weiß nicht, wie man das macht.Wie Mutationobserver zu Puppenspieler injizieren

Es ist möglich, DOM-Änderung in Puppenspieler zu verfolgen ?? Danke

+0

Es ist sicherlich möglich. Aber nicht, wenn Sie nicht teilen, was Sie bis jetzt versucht haben, und auch eine gültige Website/Testfall, wo Sie die Dom Änderung verfolgen wollen. –

+0

Danke für die Antwort. Ich habe eine Lösung dieses Problem selbst. Codierung der Javascript-Mutationobserver und injizieren Sie diesen Code mit evaluate Puppenspieler-Funktion. –

Antwort

0

Nun, Sie können benutzerdefinierten Code in den Browser injizieren.

One way:

await page.evaluate(() => { 
    const observer = new MutationObserver(
    function() { 
    // communicate with node through console.log method 
    console.log('__mutation') 
    } 
    ) 
    const config = { 
    attributes: true, 
    childList: true, 
    characterData: true, 
    subtree: true 
    } 
    observer.observe(target, config) 
}) 

In Ihrem Knoten Skript:

page.on('console', async (msg) => { 
    if (msg.text === '__mutation') { 
    // do something... 
    } 
})