Как мне получить селен вебдрайвер, чтобы остановить открытие браузера? - PullRequest
0 голосов
/ 07 сентября 2018

Я пытаюсь очистить сайт, чтобы получить фотографии, и все, что меня интересует, это их ссылки. Который я должен ждать, пока не загрузится веб-сайт javascript. Я могу получить необходимую информацию, но мне не нужно открывать Firefox каждый раз, когда я запускаю свой код. Есть ли способ просто загрузить мой HTML-код без открытия браузера каждый раз?

import selenium
from selenium import webdriver

driver = selenium.webdriver.Firefox()
driver.get("https://www.nasa.gov/multimedia/imagegallery/iotd.html")

print(driver.page_source)

Ответы [ 2 ]

0 голосов
/ 08 сентября 2018

Ответ от @ s.bridges будет работать, но set_headless() устарел.Так что вместо этого вы должны использовать свойство headless.Как это:

from selenium import webdriver
from selenium.webdriver.firefox.options import Options

options = Options()
options.headless = True
driver = webdriver.Firefox(options=options)
driver.get("https://www.nasa.gov/multimedia/imagegallery/iotd.html")
0 голосов
/ 07 сентября 2018

Вы имеете в виду запустить его без головы? Это позволит использовать Firefox, но не заметно.

Я пошел посмотреть документы и увидел, что это довольно солидный пост по настройке Firefox без головы.

from selenium import webdriver
from selenium.webdriver.firefox.options import Options

options = Options()
options.set_headless(headless=True)
driver = webdriver.Firefox(firefox_options=options, executable_path=r'C:\Utility\BrowserDrivers\geckodriver.exe')
driver.get("https://www.nasa.gov/multimedia/imagegallery/iotd.html")
print(driver.page_source)
driver.quit()

Надеюсь, это ответит на ваш вопрос!

Ссылка

...