Python Selenium không đầu Chrome [bản sao]

Dec 11 2020

Tôi đang cố gắng làm cho chrome không đầu hoạt động và tôi không thể làm cho nó hoạt động. Tôi đã tạo một tệp thử nghiệm hoạt động:

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument("--headless")

driver = webdriver.Chrome("C:\Program Files (x86)\chromedriver.exe" , chrome_options=options)
driver.get('http://www.google.com')
print(driver.title)

nó hoạt động nhưng cũng tạo ra lỗi:

C:/Users/kgood/PycharmProjects/pythonProject1/Unknown.py:6: DeprecationWarning: use options instead of chrome_options
  driver = webdriver.Chrome("C:\Program Files (x86)\chromedriver.exe" , chrome_options=options)

Tôi có thể sống với lỗi mà tôi cho là vì nó mở không đầu, bị Chrome, in tiêu đề như tôi đã hỏi, nhưng khi tôi dán nó vào dự án chính của mình, nó vẫn mở ra một cửa sổ, cửa sổ trống và nó chỉ ngồi đó như một cửa sổ trống cho đến khi nó chạy xong. Bất kỳ ý tưởng gì đang xảy ra? Đây là phần đầu của mã dự án của tôi:

from selenium import webdriver
from selenium.webdriver import Chrome
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.keys import Keys
import time

PATH = "C:\Program Files (x86)\chromedriver.exe"
driver = webdriver.Chrome(PATH)
options = webdriver.ChromeOptions()
options.add_argument("--headless")

# gets the website
driver = webdriver.Chrome("C:\Program Files (x86)\chromedriver.exe" , chrome_options=options)
driver.get("https://www.legacyhomesal.com/pennington-freedom-series-richmond-ii")

# finds the Base Price header
price = driver.find_element_by_xpath("//h3[@class='ng-binding']")
print(price.text)

# converts the string to integer
p = price.text[12::]
r = int(p.replace(',', ''))
driver.close()

Tôi đã thử nhiều cách khác nhau để thực hiện việc này nhưng chỉ một cách ở trên, kinda hoạt động:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument('--headless')
options.add_argument('--disable-gpu')  # Last I checked this was necessary.
driver = webdriver.Chrome(CHROMEDRIVER_PATH, chrome_options=options)

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.headless = True
driver = webdriver.Chrome(CHROMEDRIVER_PATH, chrome_options=options)

Trả lời

2 PDHide Dec 11 2020 at 09:54
driver = webdriver.Chrome(options=options)

lỗi cho biết chính xác ý nghĩa của nó, sử dụng options = your_optionthanchrome_options = your_option

1 dachil1pil1 Dec 11 2020 at 11:34

Rất có thể có một cửa sổ trống vì bạn đang gọi "trình điều khiển" hai lần nhưng cửa sổ đầu tiên không có url nên nó chỉ trống. tôi sẽ loại bỏ biến trình điều khiển đầu tiên.