Я хочу получить «название», «описание» и «ключевые слова» на веб-странице. Я знаю три способа реализации этой работы:
а) использовать CURL
б) использовать fopen
c) использовать get_meta_data ()
Как ни странно, каждый из вышеперечисленных функций работает некорректно.
для одного и того же URL:
Иногда я могу получить контент.
Иногда он возвращает ошибку: «не удалось открыть поток: HTTP-запрос не удался»
Я в замешательстве. Помоги мне : )
Вы можете использовать file_get_contents («http://someurl.com»); для получения внешнего веб-сайта.
Результатом будет строка, содержащая весь HTML-сайт. Затем вы можете проанализировать этот HTML-код с помощью парсера HTML для PHP, чтобы получить необходимую информацию.
EDIT, как отметил Эль Йобо, эту функцию можно отключить. Чтобы включить его, вам нужно включить обертки fopen .
может быть стоит попробовать выяснить, что такое код ошибки? вы пытаетесь выполнить HttpRequest на стороннем сервере – возможно, они ограничивают вас доступом, это может быть и любое количество других вещей, включая законные тайм-ауты, потому что ваше интернет-соединение не подходит, поэтому может быть стоит опубликовать еще несколько данных 🙂
«Иногда» позволяет мне думать, что могут возникнуть проблемы с подключением к сети с вашего сервера. Вы пытались просмотреть страницу непосредственно с сервера, например, с помощью curl
или wget
?
В противном случае я обычно реализую file_get_contents по рекомендации Luca. http://www.php.net/manual/en/function.file-get-contents.php