получение информации о метатегах с помощью curl и get_meta_tags()

есть ли способ использовать curl, чтобы вы могли сделать что-то, что эквивалентно функции get_meta_tags() в php? специально для получения метатегов внешнего сайта с помощью curl в php с наименьшими возможными накладными расходами


person kamikaze_pilot    schedule 01.03.2011    source источник


Ответы (1)


есть ли способ использовать curl, чтобы вы могли сделать что-то, что эквивалентно функции get_meta_tags() в php

Нет, я так не думаю.

Лучшим способом было бы получить данные и проанализировать их с помощью парсера HTML< /а>. В качестве альтернативы, в примечаниях пользователей в руководстве есть несколько подходов, основанных на регулярных выражениях.

person Pekka    schedule 01.03.2011
comment
@ Чувак, как этот ответ использует curl для анализа HTML? - person Pekka; 17.04.2013
comment
ОП не спрашивал, как анализировать HTML. Ответ ниже использует Curl для получения информации о метатегах. Его результат эквивалентен функции get_meta_tags() в php, как это было задано OP. Работает как денди. - person FredTheWebGuy; 17.04.2013
comment
@ Чувак, нет, он использует curl для извлечения данных, а затем продолжает использовать синтаксический анализатор HTML для анализа информации, как я также предложил. Я согласен, что это лучший ответ (и, вероятно, он должен быть принятым), но это не делает мой ответ неправильным. - person Pekka; 17.04.2013
comment
Однако это не отвечает на вопрос. Мой отрицательный голос отражает это. - person FredTheWebGuy; 17.04.2013
comment
@ Чувак, вопрос был is there a way to use curl such that you can do something that is equivalent to the get_meta_tags() function in php?, правильный ответ по-прежнему Нет. - person Pekka; 17.04.2013
comment
есть ли способ использовать curl, чтобы вы могли сделать что-то, что эквивалентно функции get_meta_tags(). Я что-то упустил здесь? ОП искал решение. Ответ ниже. - person FredTheWebGuy; 18.04.2013
comment
@Dude снова: ответ ниже не использует curl для извлечения метаданных. Для этого используется библиотека синтаксического анализа HTML. Curl не может этого сделать, он не предназначен для синтаксического анализа HTML. Вот почему ответ - это невозможно. - person Pekka; 18.04.2013
comment
Справедливо. Однако споры о семантике этого вопроса никому не приносят пользы. В любом случае, я уверен, что ОП находит ответ ниже гораздо более полезным, чем черно-белый номер. - person FredTheWebGuy; 18.04.2013
comment
@ Чувак, а ты знаешь как? В конце концов, ОП принял черно-белый ответ «нет», в то время как они могли бы легко принять другой. Вопрос очень конкретно спрашивает, как выполнить работу с curl, что невозможно. - person Pekka; 18.04.2013
comment
Первая строка функции ниже выглядит как вызов библиотеки curl. Я вижу вещи? Наконец, было бы невозможно принять лучший ответ. Ваш ответ был принят 6 марта 2011 года, тогда как лучший ответ был опубликован через 11 дней. - person FredTheWebGuy; 18.04.2013
comment
@ Чувак, я начинаю думать, что ты действительно не знаешь, что на самом деле делает код. Да, он использует curl для получения HTML. Затем для его анализа используется библиотека анализа HTML. ОП спросил, можно ли выполнить синтаксический анализ с помощью curl, чего он не может. И принятые ответы могут быть изменены в любое время. В любом случае, это пустая трата времени. - person Pekka; 18.04.2013
comment
Нет нужды в оскорблениях, и есть кое-что, что вы можете сделать, чтобы это исправить... Но прежде чем я выскажу свое предложение, позвольте мне сказать, что вы являетесь активом для этого сообщества, и можно дать менее чем пикантный ответ 0,001. % времени. Тем не менее, пожалуйста, удалите этот ответ. Удали это. Не тратьте свое время на защиту слабого ответа, опубликованного 2 года назад, когда прямо ниже находится гораздо более практичное решение. Погуглите фразу получение метатегов с помощью curl и вы получите эту страницу... а Вы, сказать что-то в этом роде не можете. Удалите этот ответ, и этого разговора никогда не было. Довольно, пожалуйста? - person FredTheWebGuy; 18.04.2013
comment
... если вы больше не беспокоитесь о том, чтобы быть правильным, чем о том, чтобы уступить более практичным ответам... - person FredTheWebGuy; 18.04.2013
comment
@ Чувак, во-первых, я не могу удалить ответ, потому что он принят. Во-вторых, ответ нормальный. ОП не просил какую-либо альтернативу get_meta_tags(), но конкретно основанную на завитке. У них должна была быть особая причина, чтобы спросить об этом - get_meta_tags() существует с PHP 4, и чтобы предложить ему альтернативу, мы должны были бы знать, почему OP не может использовать это в первую очередь. Тот факт, что они приняли ответ «нет» вместо альтернативного решения, предполагает, что никто не сказал им все, что им нужно было знать. Почему вы думаете, что лучше знаете, что здесь нужно? - person Pekka; 18.04.2013
comment
Stackoverflow в лучшем виде - всезнайки исправляют его неправильно. Ответ Пекки совершенно правильный и отлично отвечает на вопрос. Оператор попросил что-то эквивалентное php get_meta_tags, и (очень полезный) ответ ниже не эквивалентен get_meta_tags. Это (хороший) обходной путь в cURL для получения того же результата. Спасибо @Pekka 웃 и Zap за правильный ответ И альтернативное решение! - person user_name; 13.10.2018