Форум программистов, компьютерный форум, киберфорум
PHP: сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.69/35: Рейтинг темы: голосов - 35, средняя оценка - 4.69
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707

CURL не получает страницу

15.11.2012, 18:30. Показов 8846. Ответов 30
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
пишу следующий код:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$url = "http://yandex.ru/yandsearch?text=запрос&lr=65&numdoc=50&p=0";
$data = "";
         if ($ch = curl_init())
        {
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_HEADER, false);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
            curl_setopt($ch, CURLOPT_USERAGENT, 'PHP');
            $data = curl_exec($ch);
            if (empty($data)) {
                echo "EMPTY DATA<br />";
            } else {
                echo $data;
            }
            //print_r(curl_getinfo($ch));   
            //echo "\n\ncURL error number:" .curl_errno($ch);   
            //echo "\n\ncURL error:" . curl_error($ch); 
            curl_close($ch);
        } else {
            echo 'FAIL';
        }
выводит: "EMPTY DATA"
подскажите, почему не получает страницу?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.11.2012, 18:30
Ответы с готовыми решениями:

CURL не получает страницу
Здравствуйте. Столкнулся с проблемой. Надо спарсить страницу с aliexpress. Вот сама ссылка: Вот как ее показывает браузер: ...

мой CURL получает ответ 503, В то время как их AJAX запрос выдает другие ответы
Дано: Вот сайт - http://imhonet.ru/ Сверху есть строка поиска, которая при изменении строки поиска, отправляет POST запросы по...

CURL как перейти на страницу
вот мой код &lt;?php include 'simple_html_dom.php'; $ch = curl_init('http://xn--c1adbibb0aykc7n.xn--p1ai/bronirovanie.html'); ...

30
4 / 4 / 1
Регистрация: 15.03.2011
Сообщений: 31
16.11.2012, 14:43
попробуйте в юзерагент нормальный браузер вписать
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
20.11.2012, 17:05  [ТС]
Цитата Сообщение от knuckr Посмотреть сообщение
попробуйте в юзерагент нормальный браузер вписать
написал так, все ок:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
$refer ="http://ya.ru/";
        $user_cookie_file = $_SERVER['DOCUMENT_ROOT'].'/cookies.txt'; 
        $ch = curl_init($url); 
        curl_setopt($ch, CURLOPT_URL, $url); 
        curl_setopt($ch, CURLOPT_HEADER, 1); 
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
        curl_setopt($ch, CURLOPT_REFERER, "http://www.yandex.ru");
        curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)"); 
        curl_setopt($ch, CURLOPT_COOKIEFILE, $user_cookie_file); 
        curl_setopt($ch, CURLOPT_COOKIEJAR, $user_cookie_file); 
        $codePage = curl_exec($ch); 
        curl_close($ch);
0
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
20.11.2012, 18:17
Потому тчо без кук и юзерагента яндекс не отдаст страницу
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
20.11.2012, 19:08  [ТС]
Цитата Сообщение от DrobyshevAlex Посмотреть сообщение
Потому тчо без кук и юзерагента яндекс не отдаст страницу
это да, но теперь проблема в другом, яндекс выдает капчу после пары запросов, хотя ставлю тайм аут с помощью
PHP
1
sleep()
от 3 до 5 секунд, не могу придумать ничего кроме того, чтобы еще рандомно менять USERAGENT, что думаете по данному поводу?
0
4 / 4 / 1
Регистрация: 15.03.2011
Сообщений: 31
20.11.2012, 19:25
так а смена юзерагента помогла?
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
20.11.2012, 19:26  [ТС]
Цитата Сообщение от knuckr Посмотреть сообщение
так а смена юзерагента помогла?
не пробовал, не знаю какой список юзерагентов составить и есть смысл...
0
4 / 4 / 1
Регистрация: 15.03.2011
Сообщений: 31
21.11.2012, 02:43
вариант прокси юзать
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
21.11.2012, 08:17  [ТС]
Цитата Сообщение от knuckr Посмотреть сообщение
вариант прокси юзать
пробовал, но от них слишком долго ответ ждать и сложно найти рабочие прокси...

Добавлено через 4 часа 4 минуты
может есть другие варианты замаскировать скрипт?
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
21.11.2012, 10:03
blackbanny, а если использовать сервис яндекса для роботов? Там же при выдаче капчи написано, что если вы пишите робот - у яндекса есть для роботов отдельный сервис...
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
21.11.2012, 10:49  [ТС]
Цитата Сообщение от Lyodik Посмотреть сообщение
blackbanny, а если использовать сервис яндекса для роботов? Там же при выдаче капчи написано, что если вы пишите робот - у яндекса есть для роботов отдельный сервис...
да, там предлагают использовать XML сервис, но я парсю позиции сайта по запросам, а в их XML эти данные отстают от реальных данных...
0
 Аватар для basili4
201 / 199 / 4
Регистрация: 13.06.2012
Сообщений: 1,009
Записей в блоге: 3
21.11.2012, 13:00
совершено точно и к тому же для роботов яндекс отдает в более удобном для роботов xml
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
21.11.2012, 13:08  [ТС]
какие USERAGENT'ы можно поробовать подставлять рандомно?
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
21.11.2012, 14:11
Цитата Сообщение от blackbanny Посмотреть сообщение
какие USERAGENT'ы можно поробовать подставлять рандомно?
Вот несколько (какие у меня установлены) в массиве:
PHP
1
2
3
4
5
6
7
8
$user_agents = array(
                        'Opera/9.80 (Windows NT 5.1) Presto/2.12.388 Version/12.10',
                        'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)',
                        'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.5 (KHTML, like Gecko) YaBrowser/1.1.1084.5409 Chrome/19.1.1084.5409 Safari/536.5',
                        'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU) AppleWebKit/531.9 (KHTML, like Gecko) Version/4.0.3 Safari/531.9.1',
                        'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.63 Safari/535.7',
                        'Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1'
                    );
1
4 / 4 / 1
Регистрация: 15.03.2011
Сообщений: 31
21.11.2012, 15:42
Цитата Сообщение от Lyodik Посмотреть сообщение
blackbanny, а если использовать сервис яндекса для роботов? Там же при выдаче капчи написано, что если вы пишите робот - у яндекса есть для роботов отдельный сервис...
а я такого никогда не видел, где этот робото-сервис не подскажете?
0
 Аватар для basili4
201 / 199 / 4
Регистрация: 13.06.2012
Сообщений: 1,009
Записей в блоге: 3
21.11.2012, 16:04
http://api.yandex.ru/xml/doc/dg/concepts/about.xml
1
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
21.11.2012, 20:38  [ТС]
Цитата Сообщение от Lyodik Посмотреть сообщение
Вот несколько (какие у меня установлены) в массиве:
PHP
1
2
3
4
5
6
7
8
$user_agents = array(
                        'Opera/9.80 (Windows NT 5.1) Presto/2.12.388 Version/12.10',
                        'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)',
                        'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.5 (KHTML, like Gecko) YaBrowser/1.1.1084.5409 Chrome/19.1.1084.5409 Safari/536.5',
                        'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU) AppleWebKit/531.9 (KHTML, like Gecko) Version/4.0.3 Safari/531.9.1',
                        'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.63 Safari/535.7',
                        'Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1'
                    );
вы тоже подобный парсер писали?
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
21.11.2012, 21:06
Цитата Сообщение от blackbanny Посмотреть сообщение
вы тоже подобный парсер писали?
Да нет Я это говорил
Цитата Сообщение от Lyodik Посмотреть сообщение
какие у меня установлены
про то, какие браузеры у меня установлены на компьютере. Я с каждого браузера заходил и вписываел его параметры.
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
22.11.2012, 11:11  [ТС]
а кто-нибудь пробовал писать парсер выдачи яндекса подключая сервис antigate?
вот думаю стоит оно того или нет, вроде как там какая то проблема возникает даже если капча разгадана правильно, а точнее яндекс передает куку spravka, но CURL не принимает ее, следовательно на запрос снова выдается капча и все по новой...
0
 Аватар для basili4
201 / 199 / 4
Регистрация: 13.06.2012
Сообщений: 1,009
Записей в блоге: 3
22.11.2012, 11:22
blackbanny, писали же выше что есть сервис для работы роботов. Там вполне приличные условия 1000 запросов в день.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.11.2012, 11:22
Помогаю со студенческими работами здесь

CURL не хочет подгружать страницу
Перепробовал практически все наборы опций курла ... Есть ссылка ... Страница реально существет ...но CURL её не видит...

Как считать страницу через curl?
Здорова! Есть код для считывания страницы через прокси &lt;? error_reporting(E_ALL &amp; ~E_NOTICE); //создаём функцию function...

Сервер не может получить страницу (Curl, file_get_contents.)
Вообщем написал некий скрипт, работать работает и сейчас на локалке тоже, и работал на сервере, но в один прекрасный момент перестал...

Сервер не может получить страницу (Curl, file_get_contents)
привет. &lt;? $unvan_smert=&quot;http://google.com&quot;; $curl_smert = curl_init(); curl_setopt($curl_smert, CURLOPT_URL, $unvan_smert); ...

Авторизация с curl работает, как получить страницу в переменную?
есть скрипт some.php вначале в нем идет авторизация на каком-то сайте через curl, и проходит успешно. далее хочу воспользоваться поиском,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru