Как загрузить веб-страницу в php

Я задавался вопросом, как я мог загрузить веб-страницу в php для парсинга?

9
задан Hugo 17 June 2010 в 13:33
поделиться

5 ответов

Вы можете использовать что-то вроде этого

$homepage = file_get_contents('http://www.example.com/');
echo $homepage;
15
ответ дан 4 December 2019 в 06:09
поделиться

Поскольку вы, вероятно, захотите проанализировать страницу с помощью DOM , вы можете загрузить страницу напрямую с помощью:

$dom = new DOMDocument;
$dom->load('http://www.example.com');

, когда ваш PHP имеет allow_url_fopen включено.

Но в основном любая функция, которая поддерживает оболочки HTTP-потока , может использоваться для загрузки страницы.

11
ответ дан 4 December 2019 в 06:09
поделиться

С помощью библиотеки curl .

8
ответ дан 4 December 2019 в 06:09
поделиться

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

$array = file("http://www.stackoverflow.com");

Это хорошо, если вы хотите, чтобы это было в виде массива строк, тогда как уже упомянутый file_get_contents поместит его в строку.

Еще одна вещь, которую вы можете сделать.

Затем вы можете выполнить цикл по каждой строке, если это соответствует вашей цели:

foreach($array as $line){

    echo $line;
    // do other stuff here

}

Это бывает полезно, когда некоторые API-интерфейсы выводят простой текст или html с новой записью в каждой строке.

6
ответ дан 4 December 2019 в 06:09
поделиться

Вы можете использовать этот код

$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;
4
ответ дан 4 December 2019 в 06:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: