Cette bibliothèque a été inspirée par le sélénium et le marionnettiste
Tswebdriver4Delphi est un projet qui résume une variété d'outils permettant l'automatisation du navigateur Web (pour l'instant, seulement Chrome). Il fournit spécifiquement une infrastructure pour la spécification W3C WebDriver. Avec une approche similaire à Selenium, Tswebdriver4Delphi permet l'automatisation des interactions avec les éléments d'interface utilisateur, ce qui rend les tests plus efficaces et fiables.
WebDriver est une interface de télécommande qui permet l'introspection et le contrôle des agents utilisateur. Il fournit un protocole de fil neutre et linguistique comme un moyen pour que les programmes hors de processus puissent instruire à distance le comportement des navigateurs Web.
Fourni est un ensemble d'interfaces pour découvrir et manipuler les éléments DOM dans les documents Web et pour contrôler le comportement d'un agent utilisateur. Il est principalement destiné à permettre aux auteurs Web d'écrire des tests qui automatisent un agent utilisateur à partir d'un processus de contrôle séparé, mais peuvent également être utilisés de manière à permettre aux scripts de navigateur de contrôler un navigateur - éventuellement séparé -.
La conception de ce projet provient de la nécessité d'effectuer un "grattage Web" sur un site Web spécifique. Bien qu'il existe de nombreuses options pour cette tâche, comme le sélénium avec Python, le marionnettiste dans Node.js et le dramaturge en C #, la question s'est posée: qu'en est-il de Delphi? J'ai choisi de ne pas recourir au célèbre CEF4delphi, à la recherche d'une alternative plus légère avec moins de dépendances. Je voulais une solution qui répondait efficacement aux demandes, offrant une expérience plus agile et simple. Dans ce scénario, j'ai développé cet outil à Delphi pour simplifier mon travail.
️ Attention: The project is still in the alpha stage. Classes and methods may undergo changes during development.
Clone le référentiel et assurez-vous que les dépendances sont à jour
git clone [email protected]:GabrielTrigo/TSWebDriver4Delphi.git
git submodule init
git submodule update
Visitez la page de téléchargement officielle de votre ventilateur de votre navigateur (actuellement, uniquement pour Chrome) et téléchargez le pilote qui correspond à la version installée sur votre ordinateur.
Pour trouver votre version de navigateur Chrome, suivez ces étapes: accédez à Paramètres> Aide> sur Google Chrome. Par exemple, la version pourrait être quelque chose comme 121.0.6167.140 (construction officielle) 64 bits. Assurez-vous de télécharger le webdriver qui correspond à cette version spécifique pour assurer une intégration appropriée avec votre environnement de développement.
Téléchargements de webdriver chromés
var
FDriver: ITSWebDriverBase;
FChromeDriver: ITSWebDriverBrowser;
begin
FDriver := TTSWebDriver.New.Driver();
FDriver.Options.DriverPath( ' your-pathwebdriver.exe ' );
FChromeDriver := FDriver.Browser().Chrome();
end ; ? Voir l'exemple de projet ( exampleExampleTSWebDriver ) et le projet de test ( testTSWebDriver4DelphiTests )
SCAPING MERCADO Livre Site 
FChromeDriver.NavigateTo( ' https://letcode.in/elements ' );
FChromeDriver.WaitForPageReady();
LElement := FChromeDriver.FindElement(FBy.ClassName( ' search-box__input ' ));
LElement.SendKeys( ' automate ' );
FChromeDriver.WaitForSelector( ' .search-box__link ' );
LElement := FChromeDriver.FindElement(FBy.ClassName( ' search-box__link ' ));
LElement.Click();