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

Сервис обмена электронных валют


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

#1 mega94

mega94
  • Пользователь
  • 9 сообщений
  • Репутация: 0
0

Отправлено 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
  • Пользователь
  • 696 сообщений
  • Репутация: 91

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

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

Скажи, что хочешь грабить и какую информацию надо получать.
  • 0
Как часто в горестной разлуке,В моей блуждающей судьбе, ФО, я думал о тебе.


#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
  • Пользователь
  • 696 сообщений
  • Репутация: 91

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

Что конкретно надо получить с этой страницы?
  • 0
Как часто в горестной разлуке,В моей блуждающей судьбе, ФО, я думал о тебе.


#6 Ixman

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

Отправлено 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
  • 2 159 сообщений
  • Репутация: 432

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

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

#9 fedornabilkin

fedornabilkin
  • Пользователь
  • 696 сообщений
  • Репутация: 91

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

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

Так не проще ли зазеркалить сайт?
  • 0
Как часто в горестной разлуке,В моей блуждающей судьбе, ФО, я думал о тебе.


#10 mega94

mega94
    Topic Starter
  • Пользователь
  • 9 сообщений
  • Репутация: 0

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

как это?


  • 0

robot

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


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