selenium无页面登陆
时间: 2023-11-11 12:02:53 浏览: 39
Selenium可以实现无页面(Headless)登陆,步骤如下:
1. 使用无头浏览器启动Selenium
```python
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('headless') # 无头模式
options.add_argument('window-size=1920x1080') # 设置窗口大小
driver = webdriver.Chrome(options=options)
```
2. 访问登录页面
```python
driver.get('https://example.com/login')
```
3. 输入用户名和密码
```python
username_input = driver.find_element_by_name('username')
password_input = driver.find_element_by_name('password')
username_input.send_keys('username')
password_input.send_keys('password')
login_button = driver.find_element_by_xpath('//button[@type="submit"]')
login_button.click()
```
4. 等待页面跳转
```python
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
wait = WebDriverWait(driver, 10)
element = wait.until(EC.presence_of_element_located((By.ID, 'some_element_id')))
```
5. 登录成功
此时可以继续操作需要登录后才能访问的页面,或者获取登录后的cookie。
```python
cookies = driver.get_cookies()
```