6
votes

Comment puis-je contrôler de manière programmable Firefox, de préférence avec une application C #?

Je cherche à écrire un programme qui ouvre une instance de Firefox, à savoir l'instance par défaut de Firefox contenant mes différentes informations de connexion, puis passez simplement à quelques sites. Je suis en quelque sorte capable de le faire, en utilisant le code suivant: xxx

Cependant, comme je suis sûr que vous êtes surtout au courant, cela ouvre simplement un nouveau processus Firefox avec l'URL donnée comme site par défaut pour s'ouvrir à. Pour faire ce que je veux, je devrais essentiellement ouvrir un nouveau processus Firefox, faire ce que je dois sur la page, tuer le processus et répéter cela pour chaque page dont j'ai besoin. Ceci est moins qu'idéal. Donc, j'espère que quelqu'un saura une manière de contrôler par programme de manière programmable Firefox, à travers une API ou une bibliothèque ou quelque chose du genre. J'ai cherché sur Google et je n'ai trouvé jusqu'à présent que des solutions obsolètes qui n'ont pas vraiment résolu mon problème en premier lieu.

Comme toujours, merci pour votre aide! Tout ce que vous pouvez offrir est apprécié.


2 commentaires

Un terme de recherche possible est "sélénium". Je ne sais pas si beaucoup d'être ajouté pour la rendre complète :) ...


Merci! Cela ressemble à la façon dont j'irai. Je vais devoir l'essayer et vous le faire savoir.


3 Réponses :


0
votes

Démarrez d'abord le processus en utilisant: xxx pré>

puis pour le tuer que vous devez faire ensuite: P>

Process[] processes = Process.GetProcessesByName("firefox.exe");
foreach (Process p in processes)
{
    if (p.ProcessName.Equals("firefox.exe", StringComparison.OrdinalIgnoreCase))
    {
        p.Kill();
    }
}


4 commentaires

Il ne demande pas cela, il demande comment automatiser une instance, ne pas créer et tuer chacun.


Eh bien, je n'ai rien vu de tel que j'ai partagé ce que je savais. Peut-être si quelqu'un d'autre pouvait poster un code ici, ce qui nous aidera sûrement tous: /


Vous pouvez parcourir ce lien que j'ai trouvé une question similaire ici Oui, malheureusement, ATIF, cette solution est exactement ce que j'essaie d'éviter. Merci de votre aide quand même, cependant.




4
votes

Vous pouvez utiliser selenium webdiver pour C #.

Il s'agit d'une API multi-plate-forme qui vous permet de contrôler divers navigateurs à l'aide d'API pour Java, C #, entre autres.

Attachement d'un code C # avec des tests de selenium webDriver. xxx

télécharger sur http://vidadigital.com.mx/publicacion/source/program.cs


2 commentaires

Cela ressemble à un bon départ, merci Victor! Je vais vérifier et vous faire savoir quand je l'ai essayé.


Ok, c'est vraiment un bon début. Existe-t-il un moyen d'utiliser le sélénium d'utiliser les mêmes extensions que mes paramètres de Firefox par défaut?