From 7c4de5ed4c4c93842734e4d8ae96c98307b321b1 Mon Sep 17 00:00:00 2001 From: Kenneth Reitz Date: Thu, 1 Mar 2018 12:33:26 -0500 Subject: [PATCH] evaluate javascript on page Signed-off-by: Kenneth Reitz --- requests_html.py | 12 ++++++++++++ setup.py | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/requests_html.py b/requests_html.py index 89b0de8..e6880ea 100644 --- a/requests_html.py +++ b/requests_html.py @@ -381,6 +381,18 @@ class HTML(BaseParser): await page.goto(url, options={'timeout': int(timeout * 1000)}) else: await page.setContent(content) + await page.setJavaScriptEnabled(True) + try: + await page.evaluate(""" + () => { + var scripts = document.getElementsByTagName("script"); + for (var i = 0; i < scripts.length; i++) { + eval(scripts[i].innerHTML); + } + } + """) + except pyppeteer.errors.BrowserError: + pass result = None if script: diff --git a/setup.py b/setup.py index 8f17ec8..b7d9b9e 100644 --- a/setup.py +++ b/setup.py @@ -17,7 +17,7 @@ DESCRIPTION = 'HTML Parsing for Humans.' URL = 'https://github.com/kennethreitz/requests-html' EMAIL = 'me@kennethreitz.org' AUTHOR = 'Kenneth Reitz' -VERSION = '0.7.0' +VERSION = '0.7.1' # What packages are required for this module to be executed? REQUIRED = [