Я использую PhantomJS как мой webdriver. Иногда это занимает слишком много времени, чтобы загрузить веб-страницу, но я не знаю, почемуselenium webdriver занимает слишком много времени, чтобы загрузить страницу
import time
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
dcap = dict(DesiredCapabilities.PHANTOMJS)
dcap["phantomjs.page.settings.userAgent"] = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36'
driver = webdriver.PhantomJS(service_args=['--load-images=no'], desired_capabilities=dcap)
t=time.time()
driver.get('http://www.tibetculture.net/2012zyzy/zx/201509/t20150915_3939844.html')
print 'Time consuming:', time.time() - t
потребовалось около 86s, чтобы загрузить страницу. В браузере веб-страница может быть загружена через несколько секунд, и я понятия не имею, почему Webdriver PhantomJS занимает такое долгое время. Что с этим не так?
Это действительно работает, и я могу найти все элементы из своей программы. Итак, было ли время потрачено на загрузку «ожидающего» сценария? если есть тайм-аут, прекратите загрузку и рендеринг, просто вернув веб-страницу, которая уже была сделана, правильно? Я не знаю, понимаю ли я это. И спасибо! – SimmerChan
@SimmerChan Да, это идея этого решения - используйте 'window.stop()' для остановки ожидающих запросов. – alecxe