# selenium
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
chrome_options = Options()
chrome_options.add_argument('--headless')
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-dev-shm-usage")
self.webdriver = webdriver.Firefox(options=chrome_options)
Скачивание chromedriver для версии нашего браузера
webdriver.Chrome(
ChromeDriverManager().install(), options=chrome_options
)
import time
TIME_SLEEP = 1
# open target
self.webdriver.get(target.url)
# pause for rendering page
time.sleep(TIME_SLEEP)
parent_page_url = self.webdriver.current_url
for script in self.webdriver.find_elements_by_tag_name('script'):
src = script.get_attribute('src')
content_script = script.get_attribute('innerHTML')
Открытие локального HTML-файла
cj_target = os.path.join(CLICKJACKING_DIR, 'cj-target.html')
local_url = f'file://{cj_target}'
self.webdriver.get(local_url)
...
PhantomJS: Запуск своего скрипта
from selenium import webdriver
myscript = open('jsTestForSelenium', 'r')
myscript.readlines()
driver = webdriver.PhantomJS()
result = driver.execute_script(script)
driver.quit()
Запуск драйвера - процесс не быстрый. Для каждого открытия ссылки не надо запускать новый драйвер.