Я хотел бы получить содержимое страницы и переформатировать ее по своему вкусу …
Например:
Не слишком сложно, не так ли? Я PHP noob! 🙂
Попробуйте использовать PHP Simple HTML DOM Parser .
Вы можете делать такие приятные вещи:
// Create DOM from URL or file $html = file_get_html('http://www.google.com/'); // Find all images foreach($html->find('img') as $element) echo $element->src . '<br>'; // Find all links with class=x foreach($html->find('a[class=x]') as $element) echo $element->href . '<br>';
Для получения данных существует три уровня сложности:
file_get_contents($url); //easy
К сожалению, многие сайты не очень чувствительны к правильному пользовательскому агенту. Здесь у вас есть два варианта. Он немного сложнее, чем другой. Промежуточным является HTTP-клиент Zend
$client = Zend_Http_Client(); //make sure to include Zend_Http, etc. $client->setConfig($params); // params will include proper user agent $client->setUri($aUrl); $html = $client->request()->getBody();
Вариант третий, который вы, возможно, даже не захотите рассмотреть, если вы действительно хотите сохранить его более скриптовым, чем объектно-ориентированным, заключается в том, чтобы изучить функциональность cURL PHP
Есть несколько PHP-родных способов доступа к данным HTML через объект DOM, но моим фаворитом является простой HTML DOM Parser . Это очень похоже на навигацию DOM в стиле jQuery / CSS.
$domObject = new Simple_HTML_Dom($html); foreach ($domobject->find('div#theDataYouWant p') as $sentence) { echo "<h3>{$sentence}</h3>"; }
XSD может сделать трюк для вас. Я также считаю wget + CSS …