Question
Remplir un formulaire
- Stéphane
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 6
- Remerciements reçus 0
il y a 8 ans 11 mois #23381
par Stéphane
Remplir un formulaire a été créé par Stéphane
Bonsoir,
Je cherche actuellement une solution pour agir sur une page web avec PowerShell, et plus précisément, interagir avec les formulaires.
Je n'arrive pas à comprendre; je suis allé chercher des bouts de codes trouvé ici et là et j'ai pas l'impression que ça fonctionne, ou tout du moins je n'arrive pas à communiquer avec la page si ce n'est pour charger une adresse..
[code:1]
$ie = New-Object -COMObject InternetExplorer.Application
$ie.visible = $true
$ie.Navigate(‘google.fr’)
While ($ie.Busy) { Start-Sleep -Milliseconds 400 }
$ie.document.getElementsByTagName(‘img’) | Select-Object -ExpandProperty src
$ie.document.getElementsByTagName(‘a’) | Select-Object -ExpandProperty href
[/code:1]
Rien qu'avec ça je n'ai aucune réponse sur la console, auriez-vous une explication ?
Merci d'avance !
Je cherche actuellement une solution pour agir sur une page web avec PowerShell, et plus précisément, interagir avec les formulaires.
Je n'arrive pas à comprendre; je suis allé chercher des bouts de codes trouvé ici et là et j'ai pas l'impression que ça fonctionne, ou tout du moins je n'arrive pas à communiquer avec la page si ce n'est pour charger une adresse..
[code:1]
$ie = New-Object -COMObject InternetExplorer.Application
$ie.visible = $true
$ie.Navigate(‘google.fr’)
While ($ie.Busy) { Start-Sleep -Milliseconds 400 }
$ie.document.getElementsByTagName(‘img’) | Select-Object -ExpandProperty src
$ie.document.getElementsByTagName(‘a’) | Select-Object -ExpandProperty href
[/code:1]
Rien qu'avec ça je n'ai aucune réponse sur la console, auriez-vous une explication ?
Merci d'avance !
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 8 ans 11 mois #23389
par Philippe
Réponse de Philippe sur le sujet Re:Remplir un formulaire
salut gaeV
connais tu le language HTML ?
sans cette base point de salut, pardon solution
connais tu le language HTML ?
sans cette base point de salut, pardon solution
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
il y a 8 ans 11 mois #23390
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet Re:Remplir un formulaire
Hello,
Pour interagir avec un formulaire Web, dans l'esprit de soumettre des valeurs et cliquer sur le bouton Envoyer ou quelque chose du genre, le plus simple est de \"sniffer\" la requête HTTP envoyée au serveur depuis ton client et de la rejouer en modifiant à la volée les données qui varient.
Pour envoyer des données sur internet avec PowerShell rien de plus simple avec Invoke-WebRequest .
Arnaud
Pour interagir avec un formulaire Web, dans l'esprit de soumettre des valeurs et cliquer sur le bouton Envoyer ou quelque chose du genre, le plus simple est de \"sniffer\" la requête HTTP envoyée au serveur depuis ton client et de la rejouer en modifiant à la volée les données qui varient.
Pour envoyer des données sur internet avec PowerShell rien de plus simple avec Invoke-WebRequest .
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- Stéphane
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 6
- Remerciements reçus 0
il y a 8 ans 11 mois #23394
par Stéphane
Réponse de Stéphane sur le sujet Re:Remplir un formulaire
@6ratgus => Oui je connais bien le language HTML pourquoi cette question ?
@Arnaud => Merci c'est précisément ce que je cherchais! Bon je me retrouve confronté à une erreur 405, mais c'est sûrement parce que je devrais plutôt faire \"cliquer\" sur envoyer, chose que j'ai pas encore trouvé... mais merci bien !
@Arnaud => Merci c'est précisément ce que je cherchais! Bon je me retrouve confronté à une erreur 405, mais c'est sûrement parce que je devrais plutôt faire \"cliquer\" sur envoyer, chose que j'ai pas encore trouvé... mais merci bien !
Connexion ou Créer un compte pour participer à la conversation.
- Stéphane
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 6
- Remerciements reçus 0
il y a 8 ans 11 mois #23398
par Stéphane
Réponse de Stéphane sur le sujet Re:Remplir un formulaire
Désolé d'embêter,
Mais j'ai regardé un p'tit peu, j'en suis venu à ce script, mais à première vue ça n'a pas l'air de fonctionner non plus...
Quelqu'un pourrait-il me dire si le code est correct ?
[code:1]
$Link = \"11.1.204.101/set_config_emailSMTP.html\"
$Field = \"SMTPServerEnableCheckBox\"
$Field_Value = \"11.22.33.44\"
$R =Invoke-WebRequest $Link -SessionVariable SV
$SV
$Form = $R.Forms[1]
$Form | Format-List
$Form.Fields
$Form.Fields[$Field] = $Field_Value
$R =Invoke-WebRequest -Uri (\"11.1.204.101\" + $Form.Action) -WebSession $SV -Method POST -Body $Form.Fields
$R.StatusDescription
[/code:1]
Mais j'ai regardé un p'tit peu, j'en suis venu à ce script, mais à première vue ça n'a pas l'air de fonctionner non plus...
Quelqu'un pourrait-il me dire si le code est correct ?
[code:1]
$Link = \"11.1.204.101/set_config_emailSMTP.html\"
$Field = \"SMTPServerEnableCheckBox\"
$Field_Value = \"11.22.33.44\"
$R =Invoke-WebRequest $Link -SessionVariable SV
$SV
$Form = $R.Forms[1]
$Form | Format-List
$Form.Fields
$Form.Fields[$Field] = $Field_Value
$R =Invoke-WebRequest -Uri (\"11.1.204.101\" + $Form.Action) -WebSession $SV -Method POST -Body $Form.Fields
$R.StatusDescription
[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 8 ans 11 mois #23407
par Philippe
Réponse de Philippe sur le sujet Re:Remplir un formulaire
est-ce que ton site utilise la methode POST pour l'envoie de données ?
tu peut le voir par la variable $Form | Format-List
est-ce le champs de saisie s'appelle \"SMTPServerEnableCheckBox\" ?
tu peut le voir par la variable $Form.fields
j'ai créé un compte test pour avoir un exemple qui fonctionne
l'exemple ci-dessous renvoie ok si l'ouverture du site fonctionne
[code:1]$R = Invoke-WebRequest \"www.facebook.com/login.php\" -SessionVariable fb
$Form = $R.Forms[0]
$Form.Fields[\"email\"]=\"essai@free.fr\"
$Form.Fields[\"pass\"]=\"P@ssw0rd\"
$R=Invoke-WebRequest -Uri (\"https://www.facebook.com\" + $Form.Action) -WebSession $FB -Method POST -Body $Form.Fields
$R.StatusDescription[/code:1]
tu peut le voir par la variable $Form | Format-List
est-ce le champs de saisie s'appelle \"SMTPServerEnableCheckBox\" ?
tu peut le voir par la variable $Form.fields
j'ai créé un compte test pour avoir un exemple qui fonctionne
l'exemple ci-dessous renvoie ok si l'ouverture du site fonctionne
[code:1]$R = Invoke-WebRequest \"www.facebook.com/login.php\" -SessionVariable fb
$Form = $R.Forms[0]
$Form.Fields[\"email\"]=\"essai@free.fr\"
$Form.Fields[\"pass\"]=\"P@ssw0rd\"
$R=Invoke-WebRequest -Uri (\"https://www.facebook.com\" + $Form.Action) -WebSession $FB -Method POST -Body $Form.Fields
$R.StatusDescription[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.052 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Remplir un formulaire