[CURL] identification sur un site

ViPHP
ViPHP | 5462 Messages

08 août 2010, 00:36

:shock: :shock:
Mais comment tu as fait? Je savais pas qu'on pouvit faire cela?
suffis de regardé dans la doc, je te l'ai dis plus haut ;)
pas besion de curl ni rien pour steamcommunity, t'a direct l'api avec le xml dedan suffis de lire avec simplexml après

http://steamcommunity.com/profiles/tonn ... ile/?xml=1
Une petite question j'ai essayer d'ajouer ?xml=1 sur les autres sites mais ca ne marche pas, est ce que ca marche que pour steam?
Cordiamement
ca marche que pour stream

maintenant que t'as ton lien il suffit de l'utiliser avec simplexml_load_file :wink:

Eléphant du PHP | 89 Messages

08 août 2010, 00:59

Franchement stealth, j'apprend tout le temps grâce a toi, et ca ca n'a pas de prix.
=D> =D>

Eléphant du PHP | 89 Messages

08 août 2010, 22:28

Le site de steam illustre une API, bien organisé car on peut voir l'arbre du document XML en ajoutant simplement ?xml=1, mais je souhaiterais savoir, si y a une possibilité d'afficher une page voulu uniquement en XML n utilisant curl? Car cela m'aide beaucoup pour parser les infos.
Car si il s'agit d'un autre site, je ne pourrais pas utilisé la méthode précédente :wink:
Cordialement

ViPHP
ViPHP | 5462 Messages

09 août 2010, 02:45

steam a son API pour l'autre il faut voir, c'est lequel ? et quelle données tu veux récupérer ?

Eléphant du PHP | 89 Messages

09 août 2010, 14:00

Salut Stealth

Je suis entrin d'apprendre Xpath pour trouver facilement les donnée que je veut avoir.
J'aimerai récupérer une URL toujours sur steam, sans passer par leur api.
Voici l'url
<a href="http://steamcommunity.com/profiles/76561197984780389">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Steam Community :: Home :: SLK/4pa</title>
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
<link href="http://steamcommunity.com/public/css/skin_1/global.css?v=185539828" rel="stylesheet" type="text/css" />
<link href="http://steamcommunity.com/public/css/skin_1/profile_home.css?v=3570665286" rel="stylesheet" type="text/css" />
<link href="http://steamcommunity.com/public/css/skin_1/header.css?v=2949346048" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://steamcommunity.com/public/javascript/prototype-1.6.0.2.js?v=1535683511&l=english"></script>
<script type="text/javascript" src="http://steamcommunity.com/public/javascript/scriptaculous/scriptaculous.js?v=2361208777&l=english&load=effects,controls,slider"></script>
<script type="text/javascript" src="http://steamcommunity.com/public/javascript/global.js?v=3661003391&l=english"></script>
<script type="text/javascript" src="http://steamcommunity.com/public/javascript/profile_home_functions.js?v=3022667372&l=english"></script>

<script type="text/javascript" src="http://steamcommunity.com/public/javascript/modal.js?v=1837892742&l=english"></script>
<script type="text/javascript" language="javascript">
var processURL = 'http://steamcommunity.com/profiles/76561197984780389/home_process';
var cgroupinvites = 0;
var cplayerinvites = 0;
var ckicks = 0;
</script>
</head>
<body>
<center>
<!-- header bar, contains info browsing user if logged in -->
<div id="global_header">
	<div class="content">
	
		<div class="logo">
			<span id="logo_holder">
				<a href="http://store.steampowered.com/">

					<img src="http://steamcommunity.com/public/images/header/globalheader_logo.png" width="176" height="44" border="0" />
				</a>
			</span>
			<!--[if lt IE 7]>
			<style type="text/css">
			#logo_holder img { filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0); }
			#logo_holder { display: inline-block; width: 176px; height: 44px; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='http://steamcommunity.com/public/images/header/globalheader_logo.png'); }
			</style>
			<![endif]-->
		</div>
	
		<a class="menuitem" href="http://store.steampowered.com/">
			STORE		</a> 
		<a class="menuitem active" href="https://steamcommunity.com/">
			<div class="activebg">&nbsp;</div>

			Community		</a>
		<a class="menuitem" href="http://store.steampowered.com/news/">
			NEWS		</a>
		<a class="menuitem" href="http://store.steampowered.com/forums/">
			FORUMS		</a>
		<a class="menuitem" href="http://store.steampowered.com/about/">
			ABOUT		</a>

		<a class="menuitem" href="http://support.steampowered.com/">
			SUPPORT		</a>
		<a class="menuitem" href="http://store.steampowered.com/stats/">
			STATS		</a>
		
		<div id="global_actions">
							<div class="user_avatar friendBlockIcon">
					<div class="iconHolder_offline"><div class="avatarIcon"><a href="http://steamcommunity.com/profiles/76561197984780389"><img src="http://media.steampowered.com/steamcommunity/public/images/avatars/63/63a635a02683daa23639f303180b426f090c6c96.jpg" /></a></div></div>
				</div>

						<div id="global_action_menu">
														<a href="http://steamcommunity.com/?action=doLogout">LogOut</a>
						&nbsp;|&nbsp;
								<span class="pulldown" id="language_pulldown" onclick="ShowMenu( this, 'language_dropdown', 'right' );">language</span>
				<div class="popup_block" id="language_dropdown" style="display: none;">
					<div class="shadow_ul"></div><div class="shadow_top"></div><div class="shadow_ur"></div><div class="shadow_left"></div><div class="shadow_right"></div><div class="shadow_bl"></div><div class="shadow_bottom"></div><div class="shadow_br"></div><div class="iepoupfix"><img class="iepoupfix_img" src="http://steamcommunity.com/public/images/trans.gif"></div>
					<div class="popup_body popup_menu shadow_content">

																				<a class="popup_menu_item tight" href="?l=danish">
								<h5>Dansk (Danish)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=czech">
								<h5>ce�tina (Czech)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=dutch">
								<h5>Nederlands (Dutch)</h5>

							</a>
																											<a class="popup_menu_item tight" href="?l=finnish">
								<h5>Suomi (Finnish)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=french">
								<h5>Fran�ais (French)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=german">

								<h5>Deutsch (German)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=hungarian">
								<h5>magyar (Hungarian)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=italian">
								<h5>Italiano (Italian)</h5>

							</a>
																				<a class="popup_menu_item tight" href="?l=japanese">
								<h5>??? (Japanese)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=korean">
								<h5>??? (Korean)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=norwegian">

								<h5>Norsk (Norwegian)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=polish">
								<h5>Polski (Polish)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=portuguese">
								<h5>Portugu�s (Portuguese)</h5>

							</a>
																				<a class="popup_menu_item tight" href="?l=romanian">
								<h5>Rom�na (Romanian)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=russian">
								<h5>??????? (Russian)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=schinese">

								<h5>???? (Simplified Chinese)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=spanish">
								<h5>Espa�ol (Spanish)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=swedish">
								<h5>Svenska (Swedish)</h5>

							</a>
																				<a class="popup_menu_item tight" href="?l=tchinese">
								<h5>???? (Traditional Chinese)</h5>
							</a>
																				<a class="popup_menu_item tight" href="?l=thai">
								<h5>??? (Thai)</h5>
							</a>
											</div>

				</div>
			</div>
		</div>
	</div>
</div>
Merci :)

EDIT: est ce que cette expression marcherai?
$doc = new DOMDocument();
$doc->loadHTMLFile(http://.......);
$xpath = new DOMXPath($doc);
$sid = $xpath->query('//div[@class="avatarIcon"/a[@href=$url]')->item(0)->value;
Modifié en dernier par ferv21 le 09 août 2010, 16:05, modifié 1 fois.

ViPHP
ViPHP | 5462 Messages

09 août 2010, 16:04

normalement oui c'est ca, si c'est juste pour apprendre xpath c'est un bon exercice, si par contre tu veux récupérer ton avatar utilise le ?xml=1 tu peu la récupérer direct :wink:

Eléphant du PHP | 89 Messages

09 août 2010, 17:48

heu j'ai un fatal error
Fatal error: Call to a member function item() on a non-object in E:\wamp2\www\xml test\index2.php on line 9

ViPHP
ViPHP | 5462 Messages

09 août 2010, 20:31

c'est ta requête xpath qui n'est pas bonne, il viens d'ou le $url ?

Eléphant du PHP | 89 Messages

09 août 2010, 22:35

<?php
define('AUTHENTIFICATION', 'http://steamcommunity.com/profiles/76561197984780389');
libxml_use_internal_errors(true);


$doc = new DOMDocument();
$doc->loadHTMLFile(AUTHENTIFICATION);
$xpath = new DOMXPath($doc);
$sid = $xpath->query('//div[@class="actionItemIcon"/a[@href=$url]')->item(0)->value;
echo $sid;
?>
Oui, le problème vient de la en effet,

Eléphant du PHP | 89 Messages

09 août 2010, 22:49

Salut stealth^
define('AUTHENTIFICATION', 'http://steamcommunity.com/profiles/76561197984780389');
libxml_use_internal_errors(true);

$doc = new DOMDocument();
$doc->loadHTMLFile(AUTHENTIFICATION);
$xpath = new DOMXPath($doc);
$sid = $xpath->query('//div[@class="avatarIcon"/a[@href=$url]')->item(0)->value;
echo $sid
Voila

Mince j'ai poster deux fois de suite, dsl
Modifié en dernier par ferv21 le 09 août 2010, 23:06, modifié 1 fois.

ViPHP
ViPHP | 5462 Messages

09 août 2010, 22:56

:?:

Eléphant du PHP | 89 Messages

10 août 2010, 00:53

re
dsl pour le double post, voici l'urlhttp://steamcommunity.com/profiles/76561197984780389l
Je cherche à récupérer dans ma variable $sid ce lien: steam://friends/add/76561197984780389
<div class="actionItem">
						<div class="actionItemIcon"><a href="steam://friends/add/76561197984780389"><img src="http://steamcommunity.com/public/images/skin_1/iconAddFriend.gif" width="16" height="16" border="0" /></a></div>
Mais vu ma requête ca ne marchera jamais,
Revoici le code:
define('AUTHENTIFICATION', 'http://steamcommunity.com/profiles/76561197984780389');
libxml_use_internal_errors(true);
$doc = new DOMDocument();
$doc->loadHTMLFile(AUTHENTIFICATION);
$xpath = new DOMXPath($doc);
$sid = $xpath->query('//div[@class="actionItemIcon"]/@value')->item(0)->value;
echo $sid;
merci

ViPHP
ViPHP | 5462 Messages

10 août 2010, 01:48

comme ca :

Code : Tout sélectionner

//div[@class="actionItemIcon"]/a/@href
:wink:

Eléphant du PHP | 89 Messages

10 août 2010, 12:58

Salut stealth
J'avais déjà essayer cette syntaxe :lol: , mais j'avais cette erreur:
Notice: Undefined property: DOMAttr::$href in E:\wamp2\www\xml test\index2.php on line 7
define('AUTHENTIFICATION', 'http://steamcommunity.com/profiles/76561197984780389');
libxml_use_internal_errors(true);
$doc = new DOMDocument();
$doc->loadHTMLFile(AUTHENTIFICATION);
$xpath = new DOMXPath($doc);
$sid = $xpath->query('//div[@class="actionItemIcon"]/a/[@href]')->item(0)->href;
Cordialement

ViPHP
ViPHP | 5462 Messages

10 août 2010, 15:39

c'est pas pareil toi t'as les crochets :wink: