Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Сеть > curl "прикинуться браузером"


Автор: BSOD 20.11.2007, 17:37
Вобщем такая проблема: есть скриптик на php, переводит страницы через гугль (знаю, что не совсем законно, но нужно...)

смысл предельно прост:
Код

............
$zapros = "http://www.google.com/translate_t?langpair=it|en";
        curl_setopt($ch, CURLOPT_URL,$zapros);  
        curl_setopt($ch, CURLOPT_FAILONERROR, 1);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
        curl_setopt($ch, CURLOPT_TIMEOUT, 5);
        curl_setopt($ch, CURLOPT_POSTFIELDS, 1);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $http);
        curl_setopt($ch,CURLOPT_USERAGENT,"Opera/9.23 (X11; Linux i686; U; en)");
        curl_setopt($ch, CURLOPT_POSTFIELDS, "&text=$text");
        $rez = curl_exec($ch);    
.................


но вот проблема: запускаю сий скрипт через свой браузер и получаю нормальный перевод и все хорошо, захожу по SSH на сервер, делаю php translate.php и получаю, что "вы наверно Adware или Spyware, введите плз. капчу"... вывод: гугль как-то узнал, мой ip, ну или покрайней мере, что я - не браузер...

вопрос: как сказать гуглу, что я брузер и передать не забаненный ip?

Автор: BSOD 20.11.2007, 19:27
o_O O_o.. я совсем ничего не понимаю...
я думал, что как-то передается мой IP - посмотрел HTTP запросы, если запускать через браузер и с сервера - они идентичны... 
Но это не все, дальше больше: я сделал так wget (url сервера)/translate.php (понятно, что все это по SSH на сервере)... и сработало... 
так вот вопрос трасформируется в: чем отличаются эти два способа (относительно curl), как мне первый (просто php translate.php) подделать под второй?

Автор: BSOD 20.11.2007, 19:45
Все вопрос снят, я додумался... просто apache юзает другой IP и получается, если я загружаю браузером, то страница запрашивается вобще с другого IP... :(

Автор: CyClon 25.11.2007, 18:19
Гугль говорит, что вы spyware, чаще всего, когда много запросов (3 раза неверно введены логин/пасс, досинг странички).

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)