From c3d340395231a31b6c0c0914bd22047895eacfb4 Mon Sep 17 00:00:00 2001 From: Pedro de Oliveira Guedes Date: Wed, 5 Jan 2022 11:21:38 -0300 Subject: [PATCH] Creating more methods. --- api/chrome/cli.py | 80 +++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 78 insertions(+), 2 deletions(-) diff --git a/api/chrome/cli.py b/api/chrome/cli.py index a48da73..fe2b72f 100644 --- a/api/chrome/cli.py +++ b/api/chrome/cli.py @@ -1,5 +1,6 @@ import json import os +import urllib import requests @@ -84,6 +85,81 @@ class Chrome: --- #### Retorna: - --- + "" -> String vazia """ - return self.__requestget__(f"/ipc/chrome/start?to={to}") \ No newline at end of file + return self.__requestget__(f"/ipc/chrome/start?to={to}") + + def start_headless (self): + """ + ## Chrome Start Headless + Inicia uma nova sessão/instância do Google Chrome em segundo plano na máquina. + + --- + #### IMPORTANTE: + É um erro comum já estar com o Google Chrome aberto para realizar outras tarefas enquanto programa. Porém, para que este método funcione corretamente, é necessário que não haja nenhuma instância do Chrome, em primeiro ou segundo plano, ativa. + + --- + #### Parâmetros: + --- + + --- + #### Retorna: + + "" -> String vazia + """ + return self.__requestget__("/ipc/chrome/startHeadless") + + def stop (self): + """ + ## Chrome Stop + Finaliza todas as sessões/instâncias ativas, em primeiro ou segundo plano, da máquina. Caso não haja nenhuma sessão ativa, não faz nada. + + --- + #### IMPORTANTE: + Este método funciona apenas com instâncias inicializadas pelo Client do Chrome. Caso uma sessão do Chrome tenha sido iniciada por outros modos, não surtirá efeito. + + --- + #### Parâmetros: + --- + + --- + #### Retorna: + + "" -> String vazia + """ + return self.__requestget__("/ipc/chrome/stop") + + def new (self, url: str = "https://www.google.com"): + """ + ## Chrome New + Abre uma nova aba na instância do Google Chrome inicializada pelo client. + + --- + #### Parâmetros: + - url: Endereço web do site que se deseja acessar na nova aba. + + --- + #### Retorna: + + -> ID da aba aberta. + """ + + url = urllib.parse.quote(url, "") + return self.__requestget__(f"/ipc/chrome/new?url={url}") + + def close (self, id: str): + """ + ## Chrome Close + Fecha a aba cujo ID foi informado como parâmetro. + + --- + #### Parâmetros: + - id: Identificador da aba que se deseja fechar. + + --- + #### Retorna: + + "" -> String vazia + """ + + return self.__requestget__("/ipc/chrome/close/"+id) \ No newline at end of file