From f8c77b76e7aef8f50e874fe958a9019855e27329 Mon Sep 17 00:00:00 2001
From: g1879 <g1879@qq.com>
Date: Tue, 26 Mar 2024 23:26:54 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=80=89=E4=B8=AD=E7=9A=84?=
 =?UTF-8?q?=E4=B8=8B=E6=8B=89=E9=80=89=E9=A1=B9=E5=86=8D=E7=82=B9=E5=87=BB?=
 =?UTF-8?q?=E5=8F=96=E6=B6=88=E7=9A=84=E9=97=AE=E9=A2=98=EF=BC=9Bquit()?=
 =?UTF-8?q?=E5=86=85=E5=8A=A0=E5=85=A5waitpid()?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .gitee/ISSUE_TEMPLATE.zh-CN.md | 2 +-
 DrissionPage/_base/browser.py  | 3 +++
 DrissionPage/_units/clicker.py | 8 +++++---
 README.en.md                   | 8 +-------
 4 files changed, 10 insertions(+), 11 deletions(-)

diff --git a/.gitee/ISSUE_TEMPLATE.zh-CN.md b/.gitee/ISSUE_TEMPLATE.zh-CN.md
index 326f102..c6e48e4 100644
--- a/.gitee/ISSUE_TEMPLATE.zh-CN.md
+++ b/.gitee/ISSUE_TEMPLATE.zh-CN.md
@@ -1,6 +1,6 @@
 在提交issue前,请确认已经给本库点了星星,这对我来说很重要。
 
-使用方法请查看[使用文档](http://g1879.gitee.io/drissionpagedocs),文档里都有。
+使用方法请查看[使用文档](http://drissionpage.cn),文档里都有。
 也可在QQ群里提问(636361957)。
 
 请围绕以下内容陈述您的问题:
diff --git a/DrissionPage/_base/browser.py b/DrissionPage/_base/browser.py
index 0826b37..f17de5e 100644
--- a/DrissionPage/_base/browser.py
+++ b/DrissionPage/_base/browser.py
@@ -5,6 +5,7 @@
 @Copyright: (c) 2024 by g1879, Inc. All Rights Reserved.
 @License  : BSD 3-Clause.
 """
+from os import waitpid
 from pathlib import Path
 from shutil import rmtree
 from time import perf_counter, sleep
@@ -273,6 +274,8 @@ class Browser(object):
 
             if ok:
                 break
+        if self.process_id:
+            waitpid(self.process_id, 0)
 
     def _on_disconnect(self):
         self.page._on_disconnect()
diff --git a/DrissionPage/_units/clicker.py b/DrissionPage/_units/clicker.py
index 40113ed..589465e 100644
--- a/DrissionPage/_units/clicker.py
+++ b/DrissionPage/_units/clicker.py
@@ -37,10 +37,12 @@ class Clicker(object):
         :return: 是否点击成功
         """
         if self._ele.tag == 'option':
-            if self._ele.states.is_selected:
-                self._ele.parent('t:select').select.cancel_by_option(self._ele)
-            else:
+            if not self._ele.states.is_selected:
                 self._ele.parent('t:select').select.by_option(self._ele)
+            else:
+                select = self._ele.parent('t:select')
+                if select.select.is_multi:
+                    self._ele.parent('t:select').select.cancel_by_option(self._ele)
             return
 
         if not by_js:  # 模拟点击
diff --git a/README.en.md b/README.en.md
index 642c916..a3a186f 100644
--- a/README.en.md
+++ b/README.en.md
@@ -30,7 +30,7 @@ Supported browsers: Chromium core browsers (such as Chrome and Edge), electron a
 
 # 🛠 How to use
 
-**📖 Usage documentation:** [Click to view](https://g1879.gitee.io/drissionpagedocs)
+**📖 Usage documentation:** [Click to view](https://drissionpage.cn)
 
 **Communication QQ group:** 636361957
 
@@ -89,12 +89,6 @@ In addition to the above advantages, this library also has numerous built-in hum
 
 ---
 
-# 🔖 Version History
-
-[Click to view version history](https://g1879.gitee.io/drissionpagedocs/history/introduction/)
-
----
-
 # 🖐🏻 Disclaimer
 
 Please do not apply DrissionPage to any work that may violate legal regulations and moral constraints. Please use DrissionPage in a friendly manner, comply with the spider agreement, and do not use DrissionPage for any illegal purposes. If you choose to use DrissionPage