Перейти к содержимому



Как создать граббер?

#1 mega94
mega94
  • Неактивные
  • 9 сообщений
  • Репутация: 0
0

Обновлено 16 января 2014 - 15:34  Отправлено 09 января 2014 - 15:08

Здравствуйте. Помогите начинающему. Этот скрипт граббер, пожалуйста, опишите в комментарии, что делать для чего и почему:
<?php
/*   забыл, это в голову инклудь.. либо уберите... на твое ваше усмотрение...  */
$accept = "Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif,image/x-bitmap, */*;q=0.1\r\n"; /* Опысать что делат для чего и почему  */
$accept_language = "Accept-Language: ru, en;q=0.9\r\n"; /*   */
$accept_charset = "Accept-Charset: utf-8;q=0.6 windows-1251;q=0.1 *;q=0.1\r\n";/*   */
$referer = "Referer: [url="http://хост/страница.php\r\n%22;"]http://хост/страница.php\r\n";[/url] //подумай что писать дабы не палить себя /*   */
$conection = "Connection: Close\r\n";/*   */
/* ************************************************************************************** */
$host= "хост"; //в виде site.ru /*   */
$path="/страница.php?".$_SERVER['QUERY_STRING']; /*   */
$fp=fsockopen($host,80,$errno, $errstr,10); /*   */
if(!$fp) {
echo "$errstr ($errno)<br/>\n"; /*   */
} else {
$data = "";$post=0;/*   */
foreach($_POST as $key=>$value){$post=1;
		$data.="&$key=$value";}
if($data)$data=substr($data,1);/*   */
if($post)
$headers = "POST $path HTTP/1.0\r\n";else /*   */
$headers = "GET $path HTTP/1.0\r\n"; /*   */
$headers .= "Host: $host\r\n"; /*   */
$headers .= "Accept: *\r\n"; /*   */
$headers .= "Accept-Charset: UTF-8\r\n"; /*   */
$headers .= "Accept-Charset: *\r\n"; /*   */
$headers .= "Accept-Encoding: deflate\r\n"; /*   */
$headers .= "Accept-Language: ru\r\n"; /*   */
$headers .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; ru) Opera 9.50\r\n"; /*   */
if($post){
$headers .= "Content-type: application/x-www-form-urlencoded\r\n"; /*   */
$headers .= "Content-Length: ".strlen ($data)."\r\n"; /*   */
$headers .= "\r\n"; /*   */
$headers .= $data;}else $headers.="\r\n"; /*   */
@fwrite($fp, $headers); /*   */
while($file != "\r\n") $file = @fgets($fp, 128); /*   */
$file = ''; /*   */
while(!feof($fp)) $file .= @fgets($fp, 4096); /*   */
@fclose($fp); }
$file=str_replace('что','на что',$file); //замена
echo $file; /*   */
?>

 

 

  • 0

#2 fedornabilkin
fedornabilkin
  • Модератор
  • 1 190 сообщений
  • Репутация: 206

Отправлено 10 января 2014 - 10:01

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

Скажи, что хочешь грабить и какую информацию надо получать.
  • 0

Надо обсудить предложение. А тут знакосчиталка считает знаки. Про Yii2 написано.



#3 Angarsky
Angarsky
  • Неактивные
  • 57 сообщений
  • Репутация: 9

Отправлено 10 января 2014 - 11:54

Для начала русский язык бы неплохо выучить, а потом уже за языки программирования браться
  • 0

#4 mega94
mega94
    Topic Starter
  • Неактивные
  • 9 сообщений
  • Репутация: 0

Отправлено 10 января 2014 - 13:48

например вот сайт http://ka4ka.ru/ хочу грабить раздел поиск mp3
  • 0

#5 fedornabilkin
fedornabilkin
  • Модератор
  • 1 190 сообщений
  • Репутация: 206

Отправлено 16 января 2014 - 11:54

Что конкретно надо получить с этой страницы?
  • 0

Надо обсудить предложение. А тут знакосчиталка считает знаки. Про Yii2 написано.



#6 Ixman
Ixman
  • Пользователь PRO
  • 3 177 сообщений
  • Репутация: 850

Отправлено 16 января 2014 - 13:30

Лучше всего для парсинга использовать CURL, он проще и легче для восприятия. Очень много информации по нему. А так парсишь страницу, вырезаешь функцией str_replace всё что не нужно, либо вырезаешь и меняешь, и затем сохраняешь её в кеш, а оттуда отдаёшь пользователю. Ещё вариант, немного более сложный - это регулярками вытаскиваешь то, что нужно, а затем вставляешь в свой документ. Кстати CURL легко передаёт POST и GET данные.
  • 0


#7 mega94
mega94
    Topic Starter
  • Неактивные
  • 9 сообщений
  • Репутация: 0

Отправлено 16 января 2014 - 14:05

Что конкретно надо получить с этой страницы?

Надо получить с этой страницы все что там есть, но под свой дизайн и ссылку, чтобы пользователь зашел на мой сайт и думал что это мои контенти

Ixman, А можно по подробнее с кодами на примере с этого сайта http://gegas.ru/ раздел "Поиск музыки расш." чтобы пользователь зашел на мой сайт и думал что это мои контенти


  • 0

#8 Ixman
Ixman
  • Пользователь PRO
  • 3 177 сообщений
  • Репутация: 850

Отправлено 16 января 2014 - 14:30

mega94, я бы тебе посоветовал обратиться к людям, которые специализируются на написания грабберов мобильных сайтов и искать их нужно на мобильных форумах. Думаю если в вапе обитаешь, то должен знать эти форумы. Стоят грабберы не так уж и дорого
  • 0


#9 fedornabilkin
fedornabilkin
  • Модератор
  • 1 190 сообщений
  • Репутация: 206

Отправлено 16 января 2014 - 14:38

чтобы пользователь зашел на мой сайт и думал что это мои контенти

Так не проще ли зазеркалить сайт?
  • 0

Надо обсудить предложение. А тут знакосчиталка считает знаки. Про Yii2 написано.



#10 mega94
mega94
    Topic Starter
  • Неактивные
  • 9 сообщений
  • Репутация: 0

Отправлено 16 января 2014 - 15:34

как это?


  • 0

robot
robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Похожие темы
  Название темы Автор Статистика Последнее сообщение

Пользователь месяца
Megoydagi Megoydagi 1-й за Август
Очков активности: 30 4 темы, 8 сообщений, 1 балл репутации
Сайт: bank.net.ru
ТОП самых активных за этот месяц
  • Фотография Vmir
    #1

    Vmir
    Очков активности: 22.5 3 темы, 6 сообщений, 1 балл репутации

  • Фотография BLIK
    #2

    BLIK
    Очков активности: 18 Вне конкурса за определение пользователя месяца

  • Фотография kuztoday
    #3

    kuztoday
    Очков активности: 10.5 1 тема, 4 сообщения, 1 балл репутации

  • Фотография SergiuS85
    #4

    SergiuS85
    Очков активности: 10.5 2 темы, 1 сообщение, 1 балл репутации

  • Фотография kolver
    #5

    kolver
    Очков активности: 9 1 тема, 3 сообщения, 1 балл репутации

  • Фотография mkreine
    #6

    mkreine (analiz-krovi.net)
    Очков активности: 9 1 тема, 3 сообщения, 1 балл репутации

  • Фотография Megoydagi
    #7

    Megoydagi (bank.net.ru)
    Очков активности: 9 Вне конкурса за определение пользователя месяца

  • Фотография Totti
    #8

    Totti
    Очков активности: 7.5 0 тем, 5 сообщений, 1 балл репутации

  • Фотография wp01
    #9

    wp01
    Очков активности: 6 0 тем, 4 сообщения, 1 балл репутации

  • Фотография r0mZet
    #10

    r0mZet (rz-style.ru)
    Очков активности: 6 1 тема, 1 сообщение, 1 балл репутации

  • Показать весь ТОП 10

Поддержите форум! =)
Топ 5 участников по репутации

Оформление форума – IPBSkins.ru