2010-05-19 5 views
1

Je suis en train de jouer avec une idée, et je suis bloqué à cette partie. Je souhaite lire une page HTML externe, puis extraire les données contenues dans deux balises <dd>. J'ai utilisé file_get_contents avec de bons résultats, mais je ne sais pas comment accomplir cette dernière partie. Les deux étiquettes dont je veux extraire la valeur sont toujours entourées d'un <div> particulier, se demandait si cela pourrait aider? Dans mon esprit, il lit le fichier html entier dans une chaîne, puis vide toutes les données jusqu'à ce que celui-ci en particulier <div> et vide toutes les données après la fermeture </div>. Est-ce possible? Je pense que cela nécessite une syntaxe regex que je n'ai jamais utilisée. Donc, des conseils, des liens ou des exemples seraient géniaux! Je peux fournir plus d'informations si nécessaire.Lire la page HTML externe, puis trouver des données dans

Répondre

0

Vous compliquez beaucoup trop. Il suffit de charger le contenu de la page, puis recherchez la regex appropriée (preg_match()). Cela fera bien

preg_match('~<tag id="foobar">(?P<content>.*?)</endtag>~is', $input, $matches); 
+0

Oui, vous pouvez utiliser RegEx pour analyser HTML, [ou pas] (http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454) – hemp

+0

Tout le monde sait que le HTML est langue non-régulière. Mais la question était en fait: j'ai un texte enveloppé avec des phrases statiques, comment puis-je le trouver? Dom est beaucoup plus lent (et en php est même pire que dans d'autres langues) que regex simple. –

0

Si vous utilisez HTQL COM pour interroger la page, la requête est: <dd> 1: tx

Questions connexes