Ich möchte vorgestellte Websites auf meiner Website auflisten und ich dachte, es wäre cool, ihr Favicon zu ehren und zu verwenden. Wie bekomme ich es von der Domain für eine beliebige URL in JSP oder XSLT? Ich kann PHP oder Javascript auslösen, aber XSLT ist die bevorzugte Methode.Wie kann ich das Favicon einer Website abrufen?
Antwort
Um das Favicon einer Website zu erhalten, müssen Sie eine der folgenden Aktionen den Index HTML jeder vorgestellten Website und überprüfen laden:
HTML:
<link rel="icon" type="image/vnd.microsoft.icon" href="http://example.com/image.ico">
<link rel="icon" type="image/png" href="http://example.com/image.png">
<link rel="icon" type="image/gif" href="http://example.com/image.gif">
XHTML:
<link rel="icon" type="image/vnd.microsoft.icon" href="/somepath/image.ico" />
<link rel="icon" type="image/png" href="/somepath/image.png" />
<link rel="icon" type="image/gif" href="/somepath/image.gif" />
Internet Explorer kann ein etwas anderes Format verwenden:
<link rel="SHORTCUT ICON" href="http://www.example.com/myicon.ico" />
Beachten Sie außerdem, dass die meisten HTML-Browser keinen HTML-Link benötigen, um ein Favicon abzurufen. Wenn keine der oben genannten Verweise gefunden wird, sollten Sie auch im Dokumentstammverzeichnis der Website nach favicon.ico
suchen.
Mit PHP ist es einfach, den HTML-Inhalt einer Web-Seite zu erhalten, indem file_get_contents($url)
mit:
$url = 'http://www.exmaple.com';
$output = file_get_contents($url);
EXCELLENT! Danke für das Detail Daniel. Ich werde das PHP-Tutorial ausprobieren und Sie wissen lassen, wie es funktioniert. – mobibob
Sie auch einfach das ist mein Versuch machen können
http://s2.googleusercontent.com/s2/favicons?domain_url=http://domain.com
Hier bei ist es. Es nutzt verschiedene Strategien rund um die vielen möglichen Fälle zu arbeiten:
<?
/*
nws-favicon : Get site's favicon using various strategies
This script is part of NWS
https://github.com/xaccrocheur/nws/
*/
function CheckImageExists($imgUrl) {
if (@GetImageSize($imgUrl)) {
return true;
} else {
return false;
};
};
function getFavicon ($url) {
$fallback_favicon = "/var/www/favicon.ico";
// $fallback_favicon = "http://stackoverflow.com/favicon.ico";
$dom = new DOMDocument();
@$dom->loadHTML($url);
$links = $dom->getElementsByTagName('link');
$l = $links->length;
$favicon = "/favicon.ico";
for($i=0; $i<$l; $i++) {
$item = $links->item($i);
if(strcasecmp($item->getAttribute("rel"),"shortcut icon") === 0) {
$favicon = $item->getAttribute("href");
break;
}
}
$u = parse_url($url);
$subs = explode('.', $u['host']);
$domain = $subs[count($subs) -2].'.'.$subs[count($subs) -1];
$file = "http://".$domain."/favicon.ico";
$file_headers = @get_headers($file);
if($file_headers[0] == 'HTTP/1.1 404 Not Found' || $file_headers[0] == 'HTTP/1.1 404 NOT FOUND' || $file_headers[0] == 'HTTP/1.1 301 Moved Permanently') {
$fileContent = @file_get_contents("http://".$domain);
$dom = @DOMDocument::loadHTML($fileContent);
$xpath = new DOMXpath($dom);
$elements = $xpath->query("head/link//@href");
$hrefs = array();
foreach ($elements as $link) {
$hrefs[] = $link->value;
}
$found_favicon = array();
foreach ($hrefs as $key => $value) {
if(substr_count($value, 'favicon.ico') > 0) {
$found_favicon[] = $value;
$icon_key = $key;
}
}
$found_http = array();
foreach ($found_favicon as $key => $value) {
if(substr_count($value, 'http') > 0) {
$found_http[] = $value;
$favicon = $hrefs[$icon_key];
$method = "xpath";
} else {
$favicon = $domain.$hrefs[$icon_key];
if (substr($favicon, 0, 4) != 'http') {
$favicon = 'http://' . $favicon;
$method = "xpath+http";
}
}
}
if (isset($favicon)) {
if (!CheckImageExists($favicon)) {
$favicon = $fallback_favicon;
$method = "fallback";
}
} else {
$favicon = $fallback_favicon;
$method = "fallback";
}
} else {
$favicon = $file;
$method = "classic";
if (!CheckImageExists($file)) {
$favicon = $fallback_favicon;
$method = "fallback";
}
}
return $favicon;
}
?>
Für Firefox Sie https://addons.mozilla.org/en-US/firefox/addon/httpfox/ nutzen könnten. Lade eine Webseite und drücke F10> ...> "öffne HttpFox in eigenem Fenster" und suche nach "image/x-icon"; In der Spalte rechts befindet sich die URL.
Öffnen Sie den Seitenquellcode (Rechtsklick Seitenquelle anzeigen) Suchen Sie die unten angegebene Zeile, klicken Sie auf den Link images/favicon.png.
<link rel="icon" href="images/favicon.png" type="image/png" sizes="16x16">
- 1. Kann ich ein Favicon blockieren?
- 2. Kann ich ein Favicon täglich ändern
- 3. Wie kann ich das Standard-Favicon in einer SLC-Loopback-generierten Webanwendung ersetzen?
- 4. Wie kann ich das Standard-Favicon in einer SLC-Loopback-generierten Express-Webanwendung ersetzen?
- 5. Favicon aus einem Feed-Inhalt abrufen
- 6. Favicon für alle Seiten in meiner Website
- 7. Wie programmiere ich ein leeres Favicon?
- 8. Wie kann ich meinen FavIcon ständig ändern lassen?
- 9. Kann ich das Gebietsschema auf einer Windows Azure-Website ändern?
- 10. Daten von einer bestimmten Website abrufen
- 11. Wie setze ich Favicon in Codeigniter
- 12. Wie kann ich eine URL von einer Website mit Java abrufen?
- 13. eine einzige Favicon für die gesamte Website einstellen
- 14. Abrufen einer ganzen Website mit Google Cache?
- 15. Wie kann ich Daten von einer Websocket-URL abrufen?
- 16. Wie kann ich das Herunterladen einer gezippten Datei von einer Website automatisieren?
- 17. Oracle Enterprise Manager Favicon
- 18. Favicon funktioniert nicht in Google Chrome auf meiner Website
- 19. Website Favicon funktioniert normal, aber nicht in Chrome Lesezeichen
- 20. Warum wird mein Favicon nicht für meine Website angezeigt?
- 21. favicon Problem
- 22. Verwenden von Chrome-Entwicklertools zum Abrufen von Favicon
- 23. Wie kann ich das aktuelle Verzeichnis im PowerShell-Cmdlet abrufen?
- 24. Wie kann ich das UIButtons-Tag setzen und abrufen?
- 25. Favicon mit GitHub Seiten
- 26. Wie kann ich eine Domain auf die Seite einer anderen Website verweisen?
- 27. Kann Favicon in Meteor nicht laden
- 28. Wie kann ich eine Ruby-Website mit einer Datenbank sichern?
- 29. Wie füge ich ein Favicon zu einem Pelican Blog hinzu?
- 30. Wie kann ich die Blogpost-URL einer Jekyll-Website ändern?
ein Favicon bekommen man dies nutzen: http://www.google.com/s2/favicons?domain=domain_name –