@mukhammad_muvahhid

Java, Android. Как сделать эмуляцию нажатия кнопок для изменения рейтинга в сайте Bash.im?

Пишу клиент для bash.im. Страницы парсить, слава Богу, научился. Но никак не могу программно эмулировать нажатие кнопок для изменения рейтинга какой нибудь цитаты. Использую библиотеку Jsoup. Всё делаю с использованием AsyncTask (для андроида)

Document doc = Jsoup.connect(url).get(); //получаю контекст сайта
Elements btnPlus = doc.select("a[class=up]"); // получаю элементы "кнопка "+""
Elements rating = doc.select("span[class=rating-o]"); //получаю элементы "рейтинг"
ratingUrl = btnPlus.get(15).absUrl("href"); //получаю ссылку конкретной кнопки
ratingText = rating.get(15).text();//получаю инфор. о рейтинге конкретной цитаты,
Jsoup.connect(ratingUrl).userAgent("Mozilla").method(Method.POST).execute();

Ошибка не выходит, но и нажатие не симулируется.

Что делаю не так?
  • Вопрос задан
  • 4256 просмотров
Решения вопроса 2
https://www.evernote.com/shard/s12/sh/0b871d89-abf...

Научитесь не только парсить, но и дебажить то что парсите ;)
Для лайков/унлайков нужен обычный POST запрос. На скрине все видно.

Забыл уточнить, для лайка не нужно получать код кнопок. Хватит ид поста.
Ответ написан
@mukhammad_muvahhid Автор вопроса
Получилось!!!Спасибо вам огромное! Научился и дебажить,как посоветовали!
Надо было мне вот так написать
Jsoup.connect(ratingUrl).data("act","rulez").data("quote",idQuoute).followRedirects(false).referrer(url).userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0").method(Method.POST).post();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы