undetected-chromedriver使用详解
时间: 2023-10-28 20:01:42 浏览: 128
未检测到的chromedriver:自定义Selenium Chromedriver v88起| 通过所有Bot缓解系统(例如Distil Imperva Datadadome,Botprotect)
5星 · 资源好评率100%
undetected-chromedriver是一个Python库,它提供了一种方式来使用Selenium WebDriver与Chrome浏览器进行自动化测试或爬虫操作,同时能够避免被检测到使用了WebDriver。
以下是使用undetected-chromedriver的详细步骤:
1. 安装undetected-chromedriver
```
pip install undetected-chromedriver
```
2. 导入所需的模块
```python
from undetected_chromedriver import Chrome, ChromeOptions
```
3. 配置ChromeOptions
```python
options = ChromeOptions()
options.add_argument('--disable-blink-features=AutomationControlled')
options.add_argument('--disable-notifications')
options.add_argument('--disable-popup-blocking')
```
这里需要注意的是,为了避免被检测到使用了WebDriver,我们需要在ChromeOptions中添加一些特定的参数,如上述的 `--disable-blink-features=AutomationControlled`。
4. 创建Chrome实例并访问网页
```python
with Chrome(options=options) as driver:
driver.get('https://www.baidu.com/')
```
这里的with语句用于创建一个Chrome实例,并在使用完毕后自动关闭浏览器。然后通过 `get` 方法访问指定的网页。
5. 进行其他操作
```python
# 查找元素
input_element = driver.find_element_by_css_selector('#kw')
# 输入文本
input_element.send_keys('undetected-chromedriver')
# 查找搜索按钮并点击
search_button = driver.find_element_by_css_selector('#su')
search_button.click()
```
这里是一个简单的示例,我们通过 `find_element_by_css_selector` 方法查找指定的元素,然后通过 `send_keys` 方法输入文本,最后通过 `click` 方法点击搜索按钮。
总之,使用undetected-chromedriver可以让我们更加轻松地使用Selenium WebDriver进行自动化测试或爬虫操作,同时避免被检测到使用了WebDriver。
阅读全文