无头浏览器就是通过Selenium 不显示屏幕操作web浏览器
Chrome实现方式:
在创建驱动器对象之前加上以下内容就可以
```python # ---------------------- 谷歌无头浏览器 ----------------------------- import time from selenium import webdriver from selenium.webdriver.chrome.options import Options创建一个参数对象,用来控制chrome以无界面模式打开
chrome_options = Options()
chrome_options.add_argument(\'--headless\')
chrome_options.add_argument(\'--disable-gpu\')
<p>示例:</p>
```python
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
# 创建一个参数对象,用来控制chrome以无界面模式打开
chrome_options = Options()
chrome_options.add_argument(\'--headless\')
chrome_options.add_argument(\'--disable-gpu\')
# 创建浏览器对象
driver = webdriver.Chrome(chrome_options=chrome_options)
# driver = webdriver.Chrome()
driver.implicitly_wait(10) # 等待防止网络不稳定引起的报错
driver.get(\'https://pythonav.com/login/\')
time.sleep(1)
# 输入用户名
driver.find_element_by_id(\'id_username\').send_keys(\'你们不懂我\')
time.sleep(1)
# 输入密码
driver.find_element_by_id(\'id_password\').send_keys(\'但是我不怪你们\')
time.sleep(1)
# 输入验证码(只是演示)
driver.find_element_by_id(\'id_code\').send_keys(\'呵呵!刀\')
time.sleep(1)
# 点击登录
driver.find_element_by_xpath(\'//*[@id="fm"]/div[5]/div/input\').click()
# 如果验证码不正确,会有提示信息。下面就是获取提示信息,判断如果有信息,说明输入错误;如果没有说明登录成功。
msg = driver.find_element_by_xpath(\'//*[@id="fm"]/div[3]/div/div[1]/span\').text
time.sleep(1)
if msg:
driver.save_screenshot(\'error.png\')
else:
pass
time.sleep(5)
driver.quit()