Tengo un script (debajo) que raspa un sitio con un proceso de 3 pasos. funciona muy bien cuando se establece en un máximo de 1 página a la vez. sin embargo, cuando aumento eso a 2 por vez las cosas empiezan a ponerse flojas. los fuegos encendidos antes de lo esperado y la página aún no está completamente cargada. debido a esto, el resto de mi guión se rompe. ¿Alguna idea de por qué esto podría estar sucediendo? debería agregar que estoy usando la versión más nueva (1.5).Comportamiento de carga inesperado de PhantomJS con varias páginas
MAX_PAGES = 1
###
changing MAX_PAGES to >1 causes some pages onFinished event to fire before
the page is fully rendered. this is evident by the fact that there are >1 images
for some pages. i havent been able to reproduce using microsoft.com, but on some
pages i was working on the first onLoadFinished seemed to be called before the page
was actually fully loaded based on the look of the rendered images
###
newPage = (id) ->
context = {}
context.id = id
context.step = 0
context.page = require('webpage').create()
context.page.onLoadStarted = ->
context.step++
context.page.onLoadFinished = (status) ->
console.log status
if status is 'success'
context.page.render("#{context.id}_#{context.step}.png")
else
context.page.release()
context.page.open('http://www.microsoft.com')
console.log 'started loading'
newPage id for id in [1..MAX_PAGES]
Si no es una llamada recursiva como en este ejemplo, al menos una devolución de llamada que desencadenará el siguiente rastreo. –
Tu enlace está roto :( – Julien