Mike CJ Ответов: 1

Как я могу получить метаданные с другого сайта ?


Всем привет. Я хочу попробовать получить мета-теги с сайта. Может быть, кто-то знает, как я могу это сделать?

Что я уже пробовал:

Я пытаюсь работать с JS кодом вот так:
$.ajax({
    url: "http://example.com",
    dataType: 'text',
    success: function(data) {
        var elements = $("meta").html(data)[0].getElementsByTagName("head");
        for(var i = 0; i < elements.length; i++) {
            var theText = elements[i].firstChild.nodeValue;
            console.log(theText);
        }
    }
});

Но, я получаю эту ошибку не удалось загрузить http://example.com: на запрашиваемом ресурсе отсутствует заголовок "Access-Control-Allow-Origin". Происхождение 'http://example.com-следовательно, доступ запрещен.

Dave Kreskowiak

Цитата:Как я могу получить голову с другого сайта ?

ЛОЛ. Вы читали это перед тем, как опубликовать? Я не думаю, что это место для этого.

Richard Deeming

Исправил название - теперь доволен? :)

Dave Kreskowiak

Счастье больше не возможно. Я замужем. :)

1 Ответов

Рейтинг:
1

Richard Deeming

Вы не можете сделать это в чистом Javascript по соображениям безопасности. Вам нужно будет использовать прокси-скрипт на вашем собственном сайте, который выдает запрос на целевой сайт, считывает метаданные и возвращает их в ваш скрипт.

То, как вы это сделаете, будет зависеть от того, какой серверный язык вы используете. Например, с помощью ASP.NET:
Чтение мета тегов любой страницы программно без загрузки в браузер[^]