Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
 Аватар для BESSON_off
3 / 0 / 0
Регистрация: 08.07.2013
Сообщений: 351

Парсер для avito

25.09.2014, 16:27. Показов 3801. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Хочу написать парсер для сайта avito. Суть следующая: хочу чтобы алгоритм заходил на сайт, делал сортировку на заданным критериям (например, ищу авто, г.Новосибирск, от 200 000 до 500 000), но не могу разобраться с тем, как сортировать. Могу скачать html страницу полностью... а как сортировать? Нужен правильно сформированный POST сделать?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.09.2014, 16:27
Ответы с готовыми решениями:

Прошу оценить б.у. ноутбук для продажи на Avito
Здравствуйте. Имеется ноутбук AcerEmachinesE732g 15.6" (1366x768) i3-330M (2.13 ГГц) 6gb RAM (докупалась плашка на 4) родные 3 гб ...

Как в avito.ru
Уважаемые маститые мастера сегодня Я сталкнулся с интересной фишкой котороя реализовоной в проэкте http://www.avito.ru/moskva/nedvizhimost...

Покупка видеокарты на Avito
Можно ли взять видеокарту на Авито? В случае покупки, как можно проверить ее работоспособность/состояние? Спасибо.

10
 Аватар для Kverter
37 / 37 / 25
Регистрация: 30.10.2013
Сообщений: 211
25.09.2014, 16:52
Верно, нужно правильно сформировать и отправить запрос. Так и не понял в чем проблема то?
0
 Аватар для BESSON_off
3 / 0 / 0
Регистрация: 08.07.2013
Сообщений: 351
27.09.2014, 11:29  [ТС]
Проблема в том, что не могу правильно сформировать нужный POST - где взять инфу о данных, которые должен содержать запрос?
0
 Аватар для BESSON_off
3 / 0 / 0
Регистрация: 08.07.2013
Сообщений: 351
28.09.2014, 16:39  [ТС]
Как?
0
алкокодер
 Аватар для UnsKneD
157 / 153 / 41
Регистрация: 27.12.2012
Сообщений: 550
28.09.2014, 20:09
BESSON_off, посмотри как это делает сам сайт. и почему POST, если GET?

*****.**/kostomuksha?s=2&user=1
0
41 / 37 / 9
Регистрация: 01.02.2014
Сообщений: 825
28.09.2014, 20:15
как на плюсах отправить запрос!? мб я из древнего мира?!!
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
28.09.2014, 23:36
Цитата Сообщение от MakcPletnev Посмотреть сообщение
как на плюсах отправить запрос!? мб я из древнего мира?!!
С помощью встроенных средств языка - никак. Для этого существуют отдельные библиотеки.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
28.09.2014, 23:53
например, с помощью libcurl. Как-то так (пишу по памяти, может, ошибся где-то)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <curl/curl.h>
 
int main(int argc, char *argv[])
{
    CURL *curl = curl_easy_init();
    if(!curl)
    {
        std::cerr << "Error: unable to init CUrl" << std::endl;
        exit(1);
    }
    curl_easy_setopt(curl, CURLOPT_URL, "http://avito.ru/......");
    curl_easy_setopt(curl, CURLOPT_POST, 1);
    curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "foo=bar&lol=lorem&ipsum=dolor");
    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, saveData);
 
    curl_easy_perform(curl);
 
    curl_easy_cleanup(curl);
}
Описываете функцию saveData (не помню, какие там параметры), и все.. Изменили параметры - отправили новый запрос (не забудьте предварительно очистить буфер)

Добавлено через 3 минуты
З.Ы. для авито, наверное, еще потребуется установить user-agent (CURLOPT_USERAGENT), возможно referer (CURLOPT_REFERER) и/или прокси (CURLOPT_PROXY..)
1
41 / 37 / 9
Регистрация: 01.02.2014
Сообщений: 825
30.09.2014, 14:48
Цитата Сообщение от KOPOJI Посмотреть сообщение
например, с помощью libcurl. Как-то так (пишу по памяти, может, ошибся где-то)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <curl/curl.h>
 
int main(int argc, char *argv[])
{
    CURL *curl = curl_easy_init();
    if(!curl)
    {
        std::cerr << "Error: unable to init CUrl" << std::endl;
        exit(1);
    }
    curl_easy_setopt(curl, CURLOPT_URL, "http://avito.ru/......");
    curl_easy_setopt(curl, CURLOPT_POST, 1);
    curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "foo=bar&lol=lorem&ipsum=dolor");
    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, saveData);
 
    curl_easy_perform(curl);
 
    curl_easy_cleanup(curl);
}
Описываете функцию saveData (не помню, какие там параметры), и все.. Изменили параметры - отправили новый запрос (не забудьте предварительно очистить буфер)

Добавлено через 3 минуты
З.Ы. для авито, наверное, еще потребуется установить user-agent (CURLOPT_USERAGENT), возможно referer (CURLOPT_REFERER) и/или прокси (CURLOPT_PROXY..)
ого. на плюсах.. можете пояснить каждую строчку?) Спасибка с меня
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
30.09.2014, 15:19
Там, в общем-то, нечего пояснять.
curl_easy_init возвращает объект CURL, curl_easy_setopt устанавливает указанное свойство указанным значением. Список свойств есть на офф сайте http://curl.haxx.se/libcurl/c/... etopt.html. curl_easy_perform выполняет запрос к указанному URL, curl_easy_cleanup высвобождает память..

Добавлено через 19 секунд

Не по теме:

Цитата Сообщение от MakcPletnev Посмотреть сообщение
Спасибка с меня
мы работаем не за еду, а за "спасибки"! :claim: ? :D

0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
30.09.2014, 16:41
Блог: Библиотека libcurl

Но удобнее использовать фреймворки С++Builder или С++Qt
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
30.09.2014, 16:41
Помогаю со студенческими работами здесь

Срок бана IP на avito.ru
Здравствуйте. Интересует вопрос. После блокировки IP сервисом avito.ru, есть ли вероятность что он вновь будет работать через какое-то...

лицензия Windows 7 на AVITO
На AVITO некоторые продают лицензию Windows 7 Home за 800-1000р., а в магазине дешевле 4500р. не купишь. На EBAY лицензия из Америки стоит...

HttpWebRequest -> Avito.ru -> ERROR
Всем привет. N времени назад написал программу, которая получает html разметку страниц avito и обрабатывает её. До недавнего времени...

Распределение категорий как на AVITO
Добрый вечер пишу сайт, есть категории(около 300шт), хочу сделать меню похожее как на сайте avito.ru у них,как я понял для каждой...

Выгрузка личных объявлений на avito
Подскажите, пжл, можно ли по api или еще как выгружать все собственные объявления? То есть выводить список по всем объявлениям...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru