Мне было интересно, как я могу загрузить веб-страницу в php для разбора?Как загрузить веб-страницу в php
ответ
С библиотекой curl.
Вы можете использовать что-то вроде этого
$homepage = file_get_contents('http://www.example.com/'); echo $homepage;
Так как вы, вероятно, захотите разобрать страницу с DOM, вы можете загрузить страницу непосредственно:
$dom = new DOMDocument;
$dom->load('http://www.example.com');
когда ваш РНР allow_url_fopen включен ,
Но в принципе любая функция, поддерживающая HTTP stream wrappers, может быть использована для загрузки страницы.
Вы можете использовать этот код
$url = 'your url';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec ($ch);
curl_close ($ch);
// you can do something with $data like explode(); or a preg match regex to get the exact information you need
//$data = strip_tags($data);
echo $data;
Просто добавить еще один вариант, потому что там, в то время как не самый лучший, это просто использовать файл. Его другой вариант, который я не вижу никого, перечислил здесь.
$array = file("http://www.stackoverflow.com");
Его хорошо, если вы хотите его в массив строк, в то время как уже упоминалось file_get_contents будет поместить его в строку.
Просто еще одна вещь, которую вы можете сделать.
Затем вы можете цикл через каждую строку, если это соответствует вашей цели сделать так:
foreach($array as $line){
echo $line;
// do other stuff here
}
Это удобно иногда, когда некоторые интерфейсы выплюнуть простой текст или HTML с новой записью в каждой строке.
Я пытаюсь создать поисковый веб-сайт, как тест. Я пытаюсь найти другой веб-сайт, используя свой URL-адрес поиска. Вы вводите что-то в поле поиска, а затем, например, анализирует его через Google, а затем отображает результаты от Google. – Hugo
это отлично работает, если у вас нет установленного завитка – andufo