Question [Résolu]Récupérer une adresse web

Plus d'informations
il y a 13 ans 3 semaines #14068 par Florent APPOINTAIRE
Bonjour,

Je rencontre le problème suivant. Je récupère une page web que je stock dans un fichier .txt
Il y a une url qui m'intéresse dedans, en https. Cependant elle n'est pas dans une balise href, elle se balade dans le code entre deux ' '.
Avec
(Invoke-WebRequest –Uri ‘howtogeek.com’).Links
Je récupère les href mais ce n'est pas ce que je souhaite.
Comment faire pour la récupérer via PS?

Merci d'avance pour votre aide :)

Message édité par: Flodu31, à: 25/02/13 16:43<br><br>Message édité par: Flodu31, à: 26/02/13 14:04

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 3 semaines #14075 par Laurent Dardenne
Salut,
Flodu31 écrit:

Comment faire pour la récupérer via PS?

Un exemple plus précis, peut-être ?<br><br>Message édité par: Laurent Dardenne, à: 26/02/13 10:41

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 3 semaines #14076 par Florent APPOINTAIRE
Faire par exemple un select-object pour récupérer l'url.
En fait, le début de l'url est toujours pareil, c'est la fin qui change car c'est un ID qui est généré de façon aléatoire.

Merci de ton aide ;)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 3 semaines #14077 par Laurent Dardenne
Flodu31 écrit:

En fait, le début de l'url est toujours pareil, c'est la fin qui change car c'est un ID qui est généré de façon aléatoire.

Dans cas utilise une expression régulière sur ton texte issu de la page Web.
L'opérateur -match ou Select-String.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 3 semaines #14081 par Matthew BETTON
Bonjour,

Un exemple :

[code:1]
(Invoke-WebRequest -Uri 'howtogeek.com').content | Select-String '(\"https.*?\"«»)' -AllMatches | Select-Object Matches
[/code:1]

La pattern

[code:1]
'(\&quot;https.*?\&quot;«»)'
[/code:1]

est peut être à revoir : ici, on récupère toutes les adresses https déclarées entre doubles cotes.

Un outil sympa pour faire des tests : regexpal.com/

@ +

Matthew<br><br>Message édité par: Matthew BETTON, à: 26/02/13 13:13

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 3 semaines #14089 par Matthew BETTON
Je viens de tester :)

[code:1]
PS C:\&gt; $result = (Invoke-WebRequest -Uri 'howtogeek.com').content | Select-String '(\"https.*?\"«»)' -AllMatches | Select-Object Matches

PS C:\&gt; $result.matches.value
\&quot;plus.google.com/100292833634918081724\";
\&quot;ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js\";
\&quot;twitter.com/intent/user?original_referer...mp;variant=2.0\";
\&quot;twitter.com/intent/user?original_referer...mp;variant=2.0\";
\&quot;https:\&quot;
\&quot;https://sb\&quot;
\&quot;https:\&quot;
\&quot;https://secure\&quot;[/code:1]<br><br>Message édité par: Matthew BETTON, à: 26/02/13 13:12

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.052 secondes
Propulsé par Kunena