From 772bcf0df6663ccb1bb09ced3607e6407ce8e2ed Mon Sep 17 00:00:00 2001 From: Noah Levitt Date: Tue, 28 Jun 2016 12:23:32 -0500 Subject: [PATCH] handle "undefined" in list of frames when extracting outlinks (fixes ARI-4988) --- brozzler/browser.py | 4 +++- setup.py | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/brozzler/browser.py b/brozzler/browser.py index 40e6036..02b7f3c 100644 --- a/brozzler/browser.py +++ b/brozzler/browser.py @@ -290,7 +290,9 @@ var compileOutlinks = function(frame) { var outlinks = Array.prototype.slice.call( frame.document.querySelectorAll('a[href]')); for (var i = 0; i < frame.frames.length; i++) { - outlinks = outlinks.concat(compileOutlinks(frame.frames[i])); + if (frame.frames[i]) { // sometimes undefined (why?) + outlinks = outlinks.concat(compileOutlinks(frame.frames[i])); + } } return outlinks; } diff --git a/setup.py b/setup.py index 2448f7a..10ab003 100644 --- a/setup.py +++ b/setup.py @@ -21,7 +21,7 @@ import setuptools setuptools.setup( name='brozzler', - version='1.1.dev25', + version='1.1.dev26', description='Distributed web crawling with browsers', url='https://github.com/internetarchive/brozzler', author='Noah Levitt',