国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

selenium+python 去除啟動(dòng)的黑色cmd窗口方法

2020-01-04 15:00:11
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

其實(shí) selenium啟動(dòng)窗口的時(shí)候就是 使用了subprocess.Popen 啟動(dòng)的驅(qū)動(dòng)程序的,只要在啟動(dòng)的時(shí)候加上啟動(dòng)不顯示窗口的參數(shù)即可。

下面魔改開(kāi)始O(∩_∩)O哈哈~

修改代碼 位于 D:/Python35/Lib/site-packages/selenium/webdriver/common/service.py 主要是 Service類的start函數(shù)

 def start(self):  """  Starts the Service.  :Exceptions:   - WebDriverException : Raised either when it can't start the service   or when it can't connect to the service  """  try:   cmd = [self.path]   cmd.extend(self.command_line_args())   if 'win32' in str(sys.platform).lower(): ### 這里判斷是否是windows平臺(tái)    ### 在windows平臺(tái)上就隱藏窗口    startupinfo = subprocess.STARTUPINFO()    startupinfo.dwFlags = subprocess.CREATE_NEW_CONSOLE | subprocess.STARTF_USESHOWWINDOW    startupinfo.wShowWindow = subprocess.SW_HIDE   else:    startupinfo = None   self.process = subprocess.Popen(cmd, env=self.env,           close_fds=platform.system() != 'Windows',           stdout=self.log_file, stderr=self.log_file,startupinfo=startupinfo) ### 啟動(dòng)驅(qū)動(dòng)   self.PID = self.process.pid ### 將cmd窗口的進(jìn)程pid 保留 因?yàn)?窗口被隱藏了 所以在后續(xù)程序中必須考慮主控進(jìn)程結(jié)束的時(shí)候必須結(jié)束掉 驅(qū)動(dòng)cmd窗口進(jìn)程  except TypeError:   raise  except OSError as err:   if err.errno == errno.ENOENT:    raise WebDriverException(     "'%s' executable needs to be in PATH. %s" % (      os.path.basename(self.path), self.start_error_message)    )   elif err.errno == errno.EACCES:    raise WebDriverException(     "'%s' executable may have wrong permissions. %s" % (      os.path.basename(self.path), self.start_error_message)    )   else:    raise  except Exception as e:   raise WebDriverException(    "The executable %s needs to be available in the path. %s/n%s" %    (os.path.basename(self.path), self.start_error_message, str(e)))  count = 0  while True:   self.assert_process_still_running()   if self.is_connectable():    break   count += 1   time.sleep(1)   if count == 30:    raise WebDriverException("Can not connect to the Service %s" % self.path)

注意 在前面先導(dǎo)入 sys包

因?yàn)殡[藏了驅(qū)動(dòng)cmd窗口 所以 結(jié)束程序的時(shí)候 一定要做殺死驅(qū)動(dòng)cmd窗口的動(dòng)作哦 !O(∩_∩)O!!

以上這篇selenium+python 去除啟動(dòng)的黑色cmd窗口方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到python教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 南汇区| 桃江县| 临武县| 泾川县| 盱眙县| 长春市| 连城县| 永川市| 延寿县| 二连浩特市| 英超| 乳山市| 秦安县| 兴安盟| 柳河县| 永和县| 措勤县| 阿瓦提县| 彭阳县| 洛南县| 砀山县| 肥东县| 金坛市| 蕉岭县| 永福县| 永胜县| 镇平县| 峡江县| 连城县| 永丰县| 马尔康县| 灵宝市| 阳曲县| 和田县| 屏南县| 赤峰市| 余干县| 大新县| 阿拉尔市| 临汾市| 琼中|