Используйте документ DOM в PyV8

Мне нужно запустить код JavaScript внутри Python. Этот код JS использует document Функции объекта DOM, и я не знаю, как "создать объект DOM" внутри кода JS, чтобы использовать это.

В настоящее время я вызываю файл JS как:

import json
import PyV8

def runJS(html):
    ctxt = PyV8.JSContext()
    ctxt.enter()
    ctxt.eval(open('JScode.js').read().decode('utf8'))
    document = {'body': html.decode('utf8')}
    result = ctxt.eval('run(%s);' % json.dumps(document))

И в файле JScode.js у меня есть такая функция:

function run(html) {
    // TODO: convert html.body string to document
    // The html param is a dict object

    result = work(document);
    return result;
}

В JScode.js я использую методы, такие как:

document.getElementById();
document.getElementByTagName();
document.evaluate();
document.querySelectorAll();

Как я могу сделать эту работу?

0 ответов

Другие вопросы по тегам