СанчО » 2008.11.30 13:52

Очень хочу ограбить библиотеку с сайта kengu.ru , но видимо хост в бане, кАк можно обойти этот бан?

Gemorroj » 2008.11.30 14:11

грабить через прокси. но это тоже не очень хороший выход, т.к. прокси мрут очень быстро. а главное сейчас многие из них не поддерживают некоторых методов передачи данных, что делает их практически не пригодными для использования. подробнее об этом можно почитать, например, на topgen.net

СанчО » 2008.11.30 14:42

а можешь научить грабить через прокси? чисто для интереса.,...

Gemorroj » 2008.11.30 15:49

Код:

1
lt;?// заголовки$header[] = 'Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5';$header[] = 'Connection: Keep-Alive';$header[] = 'Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1';$header[] = 'Accept-Language: ru-RU,ru;q=0.9,en;q=0.8';$header[] = 'User-Agent: Opera';// создаем ресурс$curl = curl_init();// URL который нужно получитьcurl_setopt($curl, CURLOPT_URL, 'http://microsoft.com');// заголовкиcurl_setopt($curl, CURLOPT_HTTPHEADER, $header);// вернуть данные в переменную, а не выводить в выходной потокcurl_setopt($curl, CURLOPT_RETURNTRANSFER, true);// автоматически переходить по переадресациям в заголовкахcurl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);// тип используемой проксиcurl_setopt($curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);// адрес проксиcurl_setopt($curl, CURLOPT_PROXY, '127.0.0.1:8080');// получаем данные$get = curl_exec($curl);// закрываем соединениеcurl_close($curl);?>
von_Zollern » 2008.12.21 18:49

А это наподобие скрипта "Анонимный прокси"?

Gemorroj » 2008.12.22 10:15

нет.

One20 » 2009.02.06 16:25

Што делать если прокси имеет адрес типа вот этого вида http://wapbest.biz/papka/proksi.php?who=sajt_kotoryj_grabim ?

DarkDaNTe » 2009.02.06 22:05

Там где пишешь то, что грабить, пишешь:
// URL который нужно получить
$who = $_GET['who'];
curl_setopt($curl, CURLOPT_URL, $who);
Как то так по моему.
Добавлено спустя   1 минуту  6 секунд:
Gemorroj, чет типа такого?

Gemorroj » 2009.02.06 22:22

я вопрос вообще не понял) проблемы как бы не вижу.

One20 » 2009.02.07 04:42

Можно написать вместо 127.0.0.1:8080 вот это http://proxy.ru ?

Gemorroj » 2009.02.07 11:36

One20, попробуй.

Kir » 2009.02.10 13:48

Gemorroj, a подскажи, вроде по тeмe, UA, вот если в гpaбe  будeт прописaнo, вместо  headers.="opera..., где-нибудь выше  $ua_user=htmlspecialchars($_SERVER['USER_AGENT']);, a вмeсто оpera $ua_user, вот  и в кaждом грaбe тaк..
Добавлено спустя   3 минуты  35 секунд:
Нe кaк это нe влияет, или жe всё-тaки, лучшe $ua _user, кaк мнe кaжeтся...

Gemorroj » 2009.02.10 14:09

htmlspecialchars в данном случае не нужен. какой юзер агент ты отправишь, это твое личное дело. я, как правило, использую $_SERVER['USER_AGENT']

One20 » 2009.02.18 06:40

Gemorroj,у меня не получилось!

TLENS » 2009.03.26 22:41

У меня сдесь ошивка пишет што не правильно?
$header[] ='Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5';

Gemorroj » 2009.03.26 22:43

все правильно. ошибка в другом месте.

TLENS » 2009.03.29 15:44

Его же ставить в php да то у меня gmanager пишет ошыбку в 3 строке.
Отправ мне пожалуйста на електронку в файле.

TLENS » 2009.03.30 01:32

Gemoroj вышли пожалуйста tlens@list.ru

TLENS » 2009.03.30 05:28

Поудалял все теги сеперь работает только примерно после 40 загрузок с одого прокси появляется ето
You are trying to use a node of the CoDeeN CDN Network. Your IP address is not recognized as a valid PlanetLab address, so your request rate is being limited.

TLENS » 2009.03.30 05:33

То ище голова и два уха не теги а пробелы.
Можна както сделать штоб использовать один прохи как минимум 1000 раз? А то их не хватит.

Gemorroj » 2009.03.30 12:23

Я вообще не понимаю твоих проблем, делай. Все можно.
насчет "CoDeeN" - эту проксю можно выкинуть.

TLENS » 2009.03.30 16:15

Я придумал такую систему думаю ты поймеш зачем мне так много прохи
<?php
$c=file_get_contents("code.txt");
$p=explode("|",$c);
$p[0]++;
if($p[0]=="AA")
{$p[1]++;}
if($p[1]=="AA")
{$p[2]++;}
if($p[2]=="AA")
{$p[3]++;}
if($p[3]=="AA")
{$p[4]++;}
if($p[4]=="AA")
{$p[5]++;}
for ($u=0; $u<99; $u++){$t.=$p[$u].'|';}
$t=str_replace('10','a',$t);
$t=str_replace('aa','A',$t);
$t=str_replace('AA','0',$t);
?>

TLENS » 2009.03.30 16:24

A прокси брал на топген.нет
Их там не такуж и много для того штоб выбрасувать не выжав из них махимум.
Воще ето реально ипользовать 1 прох на очень много раз?

Gemorroj » 2009.03.30 17:11

тебе кто-то запретил использовать 1 прокси?
и что это за код? для чего он нужен я не понял.

TLENS » 2009.03.30 19:32

Я думал ты догадаешся для чего оно предназначеннo
Если его надо соединять с curl_setopt($curl,  CURLOPT_URL,  '...=$pas&');
Но на многих сайсах например вап.мотор вантуза стоит кол запросов с одного ип.
Вот надо потключать курл. А так как надо скрипт запускать как минимум 1000000000 раз. Я думал на него ставить до 100 задачь крона через минуту + выполнение скрипта бесконечн.
Но прохи всего 1000 и после сорока использований &get='то што писал выше';
Как ето предотвратить?
У тибя есть искю просто штоб не писать задачами?

Gemorroj » 2009.03.30 19:46

если тебе нужно что-то добавить в "'...=$pas&'", то такого крокодила изобретать не нужно. я честно говоря не понимаю в чем проблема. банят IP? следовательно нужно больше IP'ов.

TLENS » 2009.03.30 23:24

Ладно забудь.

TLENS » 2009.03.31 23:40

Как вставить реферер. Тоисть подменить адререс с которого загружалась страница? Как в накрутчике.

Gemorroj » 2009.04.01 00:19

в зависимости от того, как ты получаешь удаленную страницу.

TLENS » 2009.04.01 00:48

Всмысле ну получаю тем способом што ты выложил выше. Через курл.

Gemorroj » 2009.04.01 02:05

ну соответственно напиши этот заголовок.
$header[] = 'Referer: http://xz.ru';

LONGMAN » 2009.04.06 06:04

Gemorroj, а вазможно использовать прокси через fsockopen? А то нету курла на моём хосте.. :(

Gemorroj » 2009.04.06 11:06

Код:

1
span style="color: #0000BB"><?php// адрес, кооторый нужно получить$f = urldecode('http://www.test.com/someurl/somepage.php';// прокся$data = fsockopen('tcp://127.0.0.1', 8080)if($data){fputs($data,"GET $f \r\n");while(!feof($data)){$fdata = fgets($data,1024);}}// выводим результатecho $fdata;?>
LONGMAN » 2009.04.06 15:04

Как я знаю нужно с начала отправить 4 службних байтов, а потом url

Gemorroj » 2009.04.06 15:13

на сколько я знаю, наоборот, сначала все заголовки, 4 байта ("\r\n\r\n"), а потом тело.

LONGMAN » 2009.04.06 17:40

А какие именно заголовки нужны?

LONGMAN » 2009.04.11 04:52

Не знаете?

Gemorroj » 2009.04.11 09:44

какие хочшь, такие и отправляй.

TLENS » 2009.04.20 03:49

Привет всем а можна както брать адрес с формы где передача стоит post a He get?

Gemor » 2009.04.20 09:52

Ну возьми и передай его. Как обычный элемент формы.

Gemor » 2009.04.20 09:54

ну возьми и передай его как обычный элемент формы.

TLENS » 2009.04.21 23:34

Дак не принимает передавал всеравно.

Gemorroj » 2009.04.21 23:41

значит не правильно передавал.

TLENS » 2009.07.20 01:06

Вы пытаетесь использовать узел в CoDeeN CDN Сети. Хотя пребывания заголовке обычно необязательно для HTTP, в какой это необходимо для CoDeeN. Кроме того, численное хостов не разрешены. Просьба добавить этот заголовок, и попробуйте еще раз.
You are trying to use a node of the CoDeeN CDN Network. While the Host header is generally optional for HTTP, it is required for CoDeeN. Furthermore, numerical hostnames are not allowed. Please add this header and try again.
Помогите с заголовками.

TLENS » 2009.07.20 03:14

Уже разобрался спасибо геморой за джым.
Добавил $_SERVER['QUERY_STRING']

TLENS » 2009.07.21 21:33

Блин не все работает. Папки начало забирать а переменные пишет тоже самое.
index.php?papka/ischo_odna/
работает нармально. Но если по такой ссылке итти
index.php?papka/ischo_odna/?pages=1
светит то што написал выше.
Помогите пожалуйста курл использую как написано в етой теме толко закинул все в функцию. И обращаюсь так $file=curl_file($url.''.$_SERVER['QUERY_STRING'],$referer,$agent,$proxy);
Незнаю какие еще заголовки писать.

НЕЗНАЙКА » 2009.07.22 09:42

Наверно изза того, что ты опять же разделил урл ? думаю так нельзя

TLENS » 2009.07.22 19:51

Всмысле разделил?

НЕЗНАЙКА » 2009.07.23 22:42

Ну 'вопрос' разделяет данные в урл. Я не могу объяснить толком:(

TLENS » 2009.07.23 23:03

Да нет ето не мешает я писал и в ручную ('http://...'.$_SERVER...,
Добавлено спустя   9 минут  12 секунд:
А што самое главное скачал грабер jimm.im гемороя работает с проксями нармально заменяю переменную линк на http://visavi.net и хост на visavi.net.  3 раза обновляю и светит ето сообщение. Чо за фигня в голову не лезит.

TLENS » 2009.07.24 01:47

Наконецто до тестировался дело втом штоб использовать порта 8080 и еще много какие нужно получить доверие.
Например порт 3124 разрешает соединение. Да вот толко прохю с портом 3124 можна использовать не больше 50 раз и после етого уже никогда им не воспользуешся. А их не так уж и много штоб сделать грабер с подменой прокся. Вывод 1: отличный грабер на проксях написать не получится. Или я ошибаюсь?

Gemorroj » 2009.07.24 10:09

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

TLENS » 2009.08.06 23:26

У меня еще вопросик можно ли скачать страницу где метод пост,
например как засветить первый вариант через курл што туда вставить?

Код:

1
lt;?if(!empty($_POST['test'])){echo('все работает:<br>'.$_POST['test']);}else{echo('переменная /'test/' из масива $_POST не заполненная!');}?>
Gemorroj » 2009.08.07 13:57

$post = 'var=value&var2=value2';
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $post);

TLENS » 2009.08.07 23:44

Gemorroj написал:

$post = 'var=value&var2=value2';
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $post);

большое спасибо

TLENS » 2009.09.02 00:35

Што за ошибка и как исправить?

CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in /home/a6801323/public_html/downloads/view.php on line 29

Gemorroj » 2009.09.02 00:41

хз. давай код.

TLENS » 2009.09.02 00:53

Код:

1
span style="color: #0000BB"><?phpfunction file_curl_contents($url){$header[] = 'Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5';$header[] = 'Referer: '.$url;$header[] = 'Host: '.$url;$header[] = 'Connection: Keep-Alive';$header[] = 'Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1';$header[] = 'Accept-Language: ru-RU,ru;q=0.9,en;q=0.8';$header[] = 'User-Agent: '.$_SERVER['HTTP_USER_AGENT'];$curl = curl_init();curl_setopt($curl, CURLOPT_URL, $url);curl_setopt($curl, CURLOPT_HTTPHEADER, $header);curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);/*curl_setopt($curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);curl_setopt($curl, CURLOPT_PROXY, $proxy);*/$get=curl_exec($curl);return $get;}?>
Gemorroj » 2009.09.02 01:01

http://snippy.ru/snippet/1239-yemulirue … n-php.html
Если честно, не сталкивался с таким еще.
Так же следи чтобы в заголовок Host попал именно хост на который отправляется запрос (без http:// и без любых других параметров).

TLENS » 2009.09.02 01:23

Ты имееш ввиду добавлениние етого?

Код:

1
2
3
$host=str_replace('http://','',$url);
$host=explode('/',$host);
$host=$host[0];
Gemorroj » 2009.09.02 07:51

правильно будет использовать parse_url

TLENS » 2009.09.03 00:17

Спасибо но я насчет емулятора протестировал уж крыша едет, и ничего не получается
подскажите пожалуйста как проще извлечь адрес локации а дальше я уже сам

TLENS » 2009.09.03 00:36

О наконецто нашол то што надо

Код:

1
$last_url=parse_url (curl_getinfo($curl, CURLINFO_EFFECTIVE_URL));
TLENS » 2009.09.03 01:30

Блин ето нето оно светит линк который граблю а не лок.
Вот што нужно сделать штоб засветить с другого хоста $url. Помогите пожалуйста очень надо

Код:

1
lt;?$url='http://wapinet.ru';header ('Location: '.$url);?>
TLENS » 2009.09.03 02:18

Извиняюсь за флуд но всетаки гугл дал нужный результат
curl_setopt($ch, CURLOPT_NOBODY, 1);

Gemorroj » 2009.09.03 12:53

я тебя вообще с трудом понимаю. при чем тут NOBODY и что такое "лок" вообще?

TLENS » 2009.09.03 22:28

Сори лок ето локация а нободи выводит заголовки с который можна извлечь и адрес локации и 200,301,302 другого способа я не смог извлечь с емулятора который на адресе выше.

Gemorroj » 2009.09.03 23:39

NOBODY убирает тело страницы. А заголовки показывает CURLOPT_HEADER
Если тебе нужны заголовки, то присмотрись к функции get_headers

TLENS » 2009.09.05 00:20

Спасибо большое

TLENS » 2009.09.20 23:07

Еще вопросик как передать сокиес
$soc='log=TLENS&par=123';
?

TLENS » 2009.09.20 23:59

Я так понял из прочитаных мануалов для етого понадобится
($curl, CURLOPT_COOKIEFILE, $netscаpe);
но как составить нетскапе? туда надо писать путь к сокет?
Как его взять?

Gemorroj » 2009.09.21 00:17

Проще передать как обычный заголовок через CURL
$header[] = 'Cookie: log=TLENS; par=123';

TLENS » 2009.09.21 01:09

Шото авторизация не происходит.

Gemorroj » 2009.09.21 01:25

дай свой код

TLENS » 2009.09.21 01:28

Геморой помоги разобратся с етими функциями
curlopt_cookiefile
curlopt_cookiejar
curlopt_cookie
Добавлено спустя   6 минут  59 секунд:

Код:

1
span style="color: #0000BB"><?php$h[] = 'Cookie: log=TLENS; par=123';$c=curl_init();curl_setopt($c, CURLOPT_HTTPHEADER, $h);curl_setopt($c, CURLOPT_URL, 'http://tlens.cn');curl_setopt($c, CURLOPT_USERAGENT, 'tlens');curl_setopt($c, CURLOPT_RETURNTRANSFER, true);echo curl_exec($c);?>

__________________

Код:

1
span style="color: #0000BB"><?php$cook='/input.php?login=TLENS&pass=***&cookietrue=1&';$c=curl_init();curl_setopt($c, CURLOPT_URL, 'http://tlens.cn'.$cook);curl_setopt($c, CURLOPT_COOKIEJAR, 'file.txt');curl_setopt($c, CURLOPT_USERAGENT, 'tlens');curl_setopt($c, CURLOPT_RETURNTRANSFER, true);echo curl_exec($c);?>
TLENS » 2009.09.21 02:08

Получилось

Код:

1
lt;?$cooke='/input.php?login=TLENS&pass=&cookietrue=1&';$url = "http://tlens.cn{$cook}";$cookie = str_replace('\\', '/', dirname(__FILE__)). '/cookie.txt';$ch = curl_init();curl_setopt($ch, CURLOPT_URL,$url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie);curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);echo curl_exec($ch);curl_close($ch);?>
Gemorroj » 2009.09.21 03:12

Блин) тебесовершенно НЕ нужно записывать кукисы в файл. Кукисы - это обычный заголовок, такой же как юзер-агент или контент-тайп.

center » 2009.09.22 16:06

а как безопасней забанить пользователя по ип адресу? чтоб он несмог заходить на мой сайт?
Добавлено спустя   1 минуту  7 секунд:
наверно он решил их воровать

Gemorroj » 2009.09.22 16:16

в .htaccess занести этот ip
Deny From 127.0.0.1

CoolHAkHER » 2009.09.23 07:18

A возможно что есть у когото есче такой ип и он несможт тоже заходить? Возможна вот бан па юзер агенту и па паследним двум цифрам айпи?

Gemorroj » 2009.09.23 10:48

естественно.

TLENS » 2009.09.25 22:27

Gemoroy толькошто просидел над тестированием и заглянул в файл с куками а там пароль и логин б басе64. Тепер работает, так проще конешно. Спасибо.

TLENS » 2009.09.26 02:07

Как исправить ето?
Forbidden
You don't have permission to access / on this server.

Apache/2.2.3 Server at fank.ru Port 80

Gemorroj » 2009.09.26 08:25

ip забанен.

TLENS » 2009.09.27 21:01

Геморой а ты знаеш какие нибудь бесконечные прохи?

Gemorroj » 2009.09.27 21:09

нет таких

TLENS » 2009.09.27 21:57

А 52 пост?
Добавлено спустя   1 минуту  7 секунд:
И как ето прозрачные и анонинные?

Gemorroj » 2009.09.27 22:10

Вероятно, передают или не передают реальный IP в заголовке X-Frorvarded-For или ему подобным.

TLENS » 2009.09.28 01:03

Ммм... Ниче не понял тоисть если поставлю прокси прозрачный то ип будит моего сервера?

Gemorroj » 2009.09.28 01:40

в REMOTE_ADDR будет IP прокси, в HTTP_X_FORVARDED_FOR - твой IP определенный на прокси сервере.

TLENS » 2009.10.21 02:21

Привет всем вот мы очень долгое время обсуждали вопрос как обойти забаненный ip.
И взялись за curl но дошли высновка што ето не реально написать хароший граб с помощу вставки прохя в курл. Но есть еще одна идея но я не могу ее реализовать изза недостатка знаний.
наверное все знают

Вырезано

страница оставалась в своем исходнм расположении только уже на другом сервере. Импортировал на свой забаненный фанком хост етим кодом.

Код:

1
lt;?Вырезано;?>

Страница отразилась.
Но php дает проблемы:
1) над выводом переменной $f нельзя больше ничего выводить.
2) сканирование не показало ничего из кода фанка. Тоисть вырезать/заменить уже вопрос.
Может эту идею можна реализовать с помощу какогонибуть открытого языка програмирование например C++,perl,javascript,css и тому подобное в чем я не разбираюсь? Или есть еще возможность через php?

TLENS » 2009.10.21 02:49

Есть еще вопрос мож проще будет выполнить с помощу интерпретатора посути моих знаний выполняет код браузер а не транслятор тоисть если например взять яваскрипт он может скачать страницу браузером в переменную и обработать как php ну например выполнить операции как preg_replace() echo() file_get_contents() и тому подобное?

Gemorroj » 2009.10.21 11:05

Ты загружаешь не ту страницу, там внутри еще фрейм.

TLENS » 2009.10.22 04:38

Внатуре я проста не тот фрейм извлекал.
Там их 2 да ивоще вчера только узнал што такое фрейм.
Ди ивоще его извлекать не нужно. :)
Геморрой к тибе уважуха и доверие.

TLENS » 2009.10.22 05:56

Все сделал там проста с фрейма надо брать сессия а я парился почему постоянно дает ети фреймы теперь и вырезать мозна и все такое.
В целях безопастности етой идеи вырезал ее описание. Кому надо пишите в приват.

TLENS » 2010.04.10 05:06

Помогите пожалуйста подключится к серверу опера мини.
Слышал что многие подключали браузеры.
Сервер: http://server.operamini.com:80/
Код авторизации: p09-13.39e8338f7f8bc6f385d5b83878c68e7cbcb430ebdb9df233969562f2f7d3c32k.-
По поисковику поисковику понял что
Имя: 39e8338f7f8bc6f385d5b83878c68e7cbcb430ebdb9df233969562f2f7d3c32k
а пароль: 13
Как ето всунуть в curl?

Gemorroj » 2010.04.10 08:44

тут нужно знать спецификацию протокола, через который работает опера мини. почти наверняка тут не HTTP. а просто передать данные BASIC авторизации можно через конастанту CURLOPT_USERPWD
curl_setopt($ch, CURLOPT_USERPWD, 'login:pasword');

TLENS » 2010.04.10 14:04

Выводит пустую переменную

TLENS » 2010.04.10 14:18

Gemoroj ты можеш обяснить подробнее? я в етом воще не шарю.
Вощем мне нужен ip етого сервера.
Писал так

Код:

1
lt;?// заголовки$header[] = 'Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5';$header[] = 'Connection: Keep-Alive';$header[] = 'Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1';$header[] = 'Accept-Language: ru-RU,ru;q=0.9,en;q=0.8';$header[] = 'User-Agent: Opera';$curl = curl_init();curl_setopt($curl, CURLOPT_URL, 'http://opera.com');curl_setopt($curl, CURLOPT_HTTPHEADER, $header);curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);curl_setopt($curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);curl_setopt($curl, CURLOPT_PROXY, '2mdp.opera.com:80');curl_setopt($curl, CURLOPT_USERPWD, '39e8338f7f8bc6f385d5b83878c68e7cbcb430ebdb9df233969562f2f7d3c32k:p19-01');// получаем данные$get = curl_exec($curl);// закрываем соединениеcurl_close($curl);echo $get;?>
Gemorroj » 2010.04.10 14:32

ты не сможешь использовать сервера оперы мини, потому что не знаешь спецификацию их протокола. CURLPROXY_HTTP - ЭТО НЕ HTTP. Даже проверять не буду, потому как HTTP вменяемые люди использовать не стали бы.

TLENS » 2010.04.10 14:41

Я так понял ето гнилой варриант.
Так как он будет еще возвращать obml