Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
23 / 23 / 12
Регистрация: 25.03.2015
Сообщений: 98
1

CURL. Расширение возможности другого сайта

25.03.2015, 17:45. Показов 1783. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дано:
http://www.ros-med.info/region... ction=page - данный ресурс предоставляет возможность поиска медикаментов только по именованию(например, Натрия хлорид). Этого не достаточно.
Что хочу сделать:
У меня есть свой сайт, на котором я хочу реализовать расширенный поиск по медикаментам (как минимум по форме выпуска + автоматический по ценам).

Это мой первый проект как то связанный с web (а не desktop).
Нашел то, что очень даже подходит, функция CURL (получаю результаты поиска по наименования + парсинг + необходимые вычисления и вывожу уже конечный результат пользователю).

Но увы, по найденным примерам я получаю только форму сайта без результатов поиска.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
 
$data = array(
    'search' => 'Натрия хлорид',
    'filter' => 'mnn'
);
 
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://www.ros-med.info/region/index.php?p=1&r=46&action=page');
curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
$out = curl_exec($curl);
echo $out;
curl_close($curl);
?>
Что я упустил? Как сделать правильно?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.03.2015, 17:45
Ответы с готовыми решениями:

Расширение для браузера, возможности
Посдкажите, возможно ли в принципе реализовать следующий функционал на JS в рамках расширения для...

Сортировка текста. Расширение ее возможности обработки
Добрый день пользователи, подскажите, пожалуйста. Есть сортировка, которая сортирует текст в...

Как включить расширение CURL в PHP на Windows?
День добрый! Как в виндовсе в PHP включить расширение CURL? У меня PHP установлено на винде....

Можно ли изменять расширение загружаемого curl файла?
необходима помощь в таком вопросе. есть отправка файла в post-запросе курлом, однако столкнулся с...

3
23 / 23 / 12
Регистрация: 25.03.2015
Сообщений: 98
30.03.2015, 11:00  [ТС] 2
Вопрос еще актуален, не проходите мимо)
0
3 / 3 / 3
Регистрация: 29.03.2015
Сообщений: 20
30.03.2015, 14:22 3
Лучший ответ Сообщение было отмечено BleStaR как решение

Решение

Заинтересовала ваша проблема, так как сам не так давно подобным занимался.

У вас не правильный URL. Форма обрабатывается на results.php?action=search-price&r=46, а не по тому URL что у вас.
Поменяв адрес сразу столкнулся с проблемой кодировки. В данном случае, сервер обрабатывает запросы в cp1251. То есть конвертируем строку в нужную кодировку.

Отсюда:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
$data = array(
    'search' => iconv('utf-8', 'cp1251', 'Натрия хлорид'),
    'filter' => 'mnn'
);
 
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://www.ros-med.info/region/results.php?p=1&r=46&action=page');
curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
$out = curl_exec($curl);
echo $out;
curl_close($curl);
Вроде бы работает =) Можете парсить.
0
23 / 23 / 12
Регистрация: 25.03.2015
Сообщений: 98
30.03.2015, 20:16  [ТС] 4
Спасибо. Действительно проблема в URL. (у меня проблемы с кодировкой не возникло, видимо 1251 по дефолту стоит - но теперь будем знать о возможности такой проблемы).
0
30.03.2015, 20:16
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.03.2015, 20:16
Помогаю со студенческими работами здесь

Изменяю файл hosts, ставлю напротив сайта ip адрес другого сайта
По идее должен идти редирект на этот самый другой сайт. Например строчка 87.240.156.161 www.kiss.ru...

Установка скрипта на страницу сайта с уже установленной страницы другого сайта
Здраствуйте. У меня такой вопрос. Каким образом можно установить скрипт на свою страницу с другого...

Парсить данные одного сайта со стороны клиента со страницы другого сайта
Есть 2 сайта. 1 - не мой 2 - мой. Мне нужно сделать следующее : Как только пользователь...

Перенос данных из полей моего сайта, в поле другого сайта - эмулирование человеческого воздействия
Существует страница на моём сайте, на ней расположены несколько полей и кнопка &quot;Отправить&quot;....

Нет возможности проверить позиции сайта
Всем привет. Хочу раскрутить сайт но ничего не получается. Прописал НЧ запросы, создал XML файл в...

Возможности Python для крупного сайта
Поставили задачу разработать сайт-хранилище с большим объёмом фотографий. Их может быть 10к - 30к....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru