вот код
<form action="index" method="get">
<input type="text" name="q" value="<?echo $_GET['q'];?>">
<input type="submit" value="search">
</form>
<hr>
<?PHP
$post = str_replace(' ', '+', $_GET['q']);
if(!isset($_GET['p'])){$_GET['p'] = 0;}
$start = $_GET['p'];
//Сайт на котором ищем ~ можно закоментировать, тогда поиск будет глобальным
//$site = "site:moysait.com"; //Без http и www
//Сам запрос
$query = "http://www.google.com/search?hl=ru&client=opera&hs=2xN&rls=ru&q=&quo t;.$site."+".$post."&aq=f&aqi=g10&aql=&oq=&start=".$start."";
//смотрим код страници которую получили по запросу
$code = file_get_contents($query);
//Получаем:
//1.ссылка
$url = "|\<li class\=g\>\<h3 class=\"r\">\<a href\=\"(.*)\".*|U";
preg_match_all($url, $code, $surl);
$url = $surl[1];
//2.титл
$title = "|\<*.g\>\<h3.*\>\<a .*\>(.*)\<\/a\>\<\/h3\>.*|U";
preg_match_all($title, $code, $stitle);
$title = $stitle[1];
//3.описание
$text = "|lass\=\"s\"\>(.*)<a.*>.*|U";
preg_match_all($text, $code, $stext);
$text = $stext[1];
//считаем сколько у нас результатов поиска на страничке
$c = count($title);
//выводим
for($i=0; $c>=$i; $i++)
{
//Не будем выводить инфу если переменые пустые.
if(!empty($text[$i]) or !empty($url[$i]) or !empty($title[$i]))
{
echo $i+1+$start;
echo ". <b><a href='".$url[$i]."'>".$title[$i]."</a></b>
<br>
<i>".$text[$i]."</i>
<hr width=50%>";
}
}
//Вперед и назад, навигация типа
echo "<center>";
//отчет назад
$b = $start-10;
if(!empty($start))
{
echo "<a href='?q=".$post."&p=".$b."'><<<</a> Back ";
}
//отчет в перед
$n = $start+10;
if(!empty($_GET['q']))
{
echo "| Next <a href='?q=".$post."&p=".$n."'>>>></a>";
}
echo "</center>";
?>
Спустя 20 минут, 37 секунд (24.03.2011 - 14:27) sergeiss написал(а):
На всякий случай - прямо над полем ввода текста есть кнопки для кодов. Которые позволяют "подсветить" код. Это я про форум говорю Рекомендую пользоваться, намного лучше текст читать.
А первое сообщение я подправлю, чтобы оно удобнее было для читающих его.
PS. Похоже, там были эти тэги... Только как-то неправильно поставились сначала.
И по сути вопроса. Укажи текст, который тебе надо парсить. Потому что иначе не понятно, о чем идет речь. Не обязательно всю страницу гугла , но как минимум часть того, что надо обрабатывать.
А первое сообщение я подправлю, чтобы оно удобнее было для читающих его.
PS. Похоже, там были эти тэги... Только как-то неправильно поставились сначала.
И по сути вопроса. Укажи текст, который тебе надо парсить. Потому что иначе не понятно, о чем идет речь. Не обязательно всю страницу гугла , но как минимум часть того, что надо обрабатывать.
Спустя 2 часа, 4 минуты, 34 секунды (24.03.2011 - 16:31) Эли4ка написал(а):
ты понимаешь, мне надо переделать этот скрипт так,чтобы вместо ответов(сайтов с веба гугла) приходили фотографии(изображение) ,но так чтобы они видны были ,а не просто сайты,где эти изображение есть.
P.S. за подправку кода спасибо.
P.S. за подправку кода спасибо.
Спустя 29 минут, 54 секунды (24.03.2011 - 17:01) sergeiss написал(а):
Цитата (Эли4ка @ 24.03.2011 - 17:31) |
чтобы вместо ответов(сайтов с веба гугла) приходили фотографии(изображение) ,но так чтобы они видны были ,а не просто сайты,где эти изображение есть |
В настоящее время ты предлагаешь, по сути дела, пойти в гугль, получить там страницу, прочитать её HTML-код и выдать тебе твой ПХП-код в скорректированном виде. Так получается? А я тебе говорю - покажи ту страницу, которую ты хочешь парсить. И именно ту часть, которая значимая, не обязательно всю страницу.
Спустя 9 часов, 55 минут, 26 секунд (25.03.2011 - 02:57) Эли4ка написал(а):
Прошу прощения,это я не с того браузера зашла..удалите пожалуйста пост.
а поняла!вот адрес сраницы:http://www.google.ru/images?hl=ru&source=hp&biw=1280&bih=834&q=сам запрос&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BE%D0%BA&gbv=2&aq=f&aqi=g10&aql=&oq=
и значимая часть кода для меня является ,та где располагаются изображения.Надеюсь понятно обьяснила..
а поняла!вот адрес сраницы:http://www.google.ru/images?hl=ru&source=hp&biw=1280&bih=834&q=сам запрос&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BE%D0%BA&gbv=2&aq=f&aqi=g10&aql=&oq=
и значимая часть кода для меня является ,та где располагаются изображения.Надеюсь понятно обьяснила..
Спустя 1 день, 11 часов, 9 минут, 36 секунд (26.03.2011 - 14:06) Guest написал(а):
А через родное API парсить не проще?
<?php
//Кей:
$keyforparse = "keyword";
//URL для запроса:
$url = "http://ajax.googleapis.com/ajax/services/search/images?v=1.0&q=".urlencode($keyforparse)."";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$json_data = curl_exec($ch); //Запускаем curl
curl_close($ch);
//Теперь надо распарсить JSON ответ.
$response = json_decode($json_data, true);
//Теперь разбираемся с результатами
for($counter=0; $counter < sizeof($response['responseData']['results']); $counter++){
echo("".$response['responseData']['results'][$counter]['url']."<br/>"); //url - выведет ссылки на картинки. Подробнее см тут - http://www.google.com.ua/url?sa=t&source=web&cd=1&ved=0CBwQFjAA&url=http%3A%2F%2Fcode.google.com%2Fapis%2Fimagesearch%2Fv1%2Fjsondevguide.html &ei=r8iNTYaCFY2XhQeYh4C8Dg&usg=AFQjCNF5b_Yed5wrncKLQYS3lbTK7EiNWA
}
?>
Спустя 9 минут, 33 секунды (26.03.2011 - 14:16) Эли4ка написал(а):
спасибо,и мне это заменить вместо моего PHP-кода,да?