首页 > 解决方案 > 使用 Headless WebDriver 应用函数

问题描述

使用 Selenium 库,我希望运行一个无头 WebDriver,但我得到一个 NameError。以下代码应该只检索站点的 HTML 代码。

NameError: name 'options' is not defined

我试图使用几个函数来清除我的代码,希望同时运行多个脚本。

#coding: utf-8
import requests
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options


class WebDriver:

    def __init__(self):
        self.setup()
        self.extractor()
        self.teardown_module()

    def setup(self):
        self.options = Options()
        self.options.headless = True
        self.driver = webdriver.Chrome('/Users/user/Documents/docs/chromedriver', chrome_options=options)
        self.driver.get('https://google.com/')
        self.driver.page_source

    def teardown_module(self):
        self.driver.quit()

page = WebDriver()
page.driver

标签: pythonpython-3.xseleniumselenium-webdriver

解决方案


我相信这个

self.driver = webdriver.Chrome('/Users/user/Documents/docs/chromedriver', options=options)

应该是这个

self.driver = webdriver.Chrome('/Users/user/Documents/docs/chromedriver', chrome_options=self.options)

推荐阅读