Erste meta-Titel und Beschreibung
Ich habe Probleme damit, die meta-Beschreibung/Titel aus diese bestimmte Website.
Hier einige code:
$file = file('http://www.thegooddrugsguide.com/lsd/index.htm');
$file = implode("",$file);
if (preg_match('/<title>(.*?)<\/title>/is',$file,$t)) $title = $t[1];
Funktioniert es mit anderen Seiten, aber nicht mit der Website in Frage. Was könnte das problem sein?
- TUN. NICHT. VERWENDEN. REGEXES. FÜR. - ANALYSE. HTML-Code.
- am besten ist die Verwendung von DOM-api - php.net/manual/en/book.dom.php
- sagen Sie Nein zu Drogen... es sei denn, es frei
InformationsquelleAutor johnny | 2011-05-24
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dieser sollte funktionieren:
Mehr info: http://www.php.net/manual/en/book.dom.php
Bearbeiten: diese kürzere version kann auch Arbeit zu finden in der Beschreibung:
DOMDocument::loadHTMLFile() [domdocument.loadhtmlfile]: Invalid char in CDATA 0x1F in http://www.thegooddrugsguide.com/lsd/index.htm, line: 1
Cannot use object of type DOMNodeList as array
$title = $title[0];
verwenden$title = $title->item(0)->nodeValue;
$description = $xpath->query('/html/head/meta[name@="description"]/@content');
Lesen sollte$description = $xpath->query('/html/head/meta[@name="description"]/@content');
Die@
kommen sollte, bevor das name-Attribut-Selektor nicht danach.$description = $meta->getAttribute('content');
stattgetAttribute('value')