@UserTrue ага, главное, чтобы прошивка была. У меня валяется дома штук 10 дигма, эпопея по поиску кастом прошивки длилась недели 2 и пару трубок превратилось в кирпич в процессе xD
Как через http клиент нажать на кнопку?
-
@senerg said in Как через http клиент нажать на кнопку?:
Кто-нибудь знает, как на нее нажать через http клиент?
Если Вы будете так ставить вопросы, ответы будут ещё долго до Вас доходить.
Ваша конечная цель - не нажать на кнопку, а получить данные. Вы даже написали об этом в посте, но вопрос поставили коряво. Вам @Denis_krsk абсолютно правильно написал, т.к. кликнуть можно только в скомпилированном браузером интерфейсе, которого нет, т.к. нет и самого браузера. Пишите свои вопросы корректно!Теперь ответ на Ваш вопрос.
Как мы уже выяснили, задача не кликнуть, а получить данные. Чтобы их получить необходимо сделать следующее:- Отследить запрос, которой уходит при нажатии на эту кнопку в браузере и отдает Вам нужные данные.
- Повторить его в http-клиенте.
- Profit.
-
@xclsv , не правильно выразился.
Отследил запросы, проходит два гет запроса по очереди:https://freight.aliexpress.com/ajaxFreightGetAddressListNew.htm?callback=jQuery18309359350453220188_1541494543906&_=1541494584945 Accept: */* Accept-Encoding: gzip, deflate Referer: https://www.aliexpress.com/item/USLION-Phone-Case-For-iPhone-7-6-6s-Plus-5-5s-SE-Simple-Solid-Color-Ultrathin/32808065488.html User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36и второй:
https://freight.aliexpress.com/ajaxFreightCalculateService.htm?callback=jQuery18309359350453220188_1541494543905&f=d&productid=32808065488&count=1&minPrice=0.97&maxPrice=0.97¤cyCode=USD&transactionCurrencyCode=USD&sendGoodsCountry=&country=US&province=&city=&abVersion=1&_=1541494584945 Accept: */* Accept-Encoding: gzip, deflate Referer: https://www.aliexpress.com/item/USLION-Phone-Case-For-iPhone-7-6-6s-Plus-5-5s-SE-Simple-Solid-Color-Ultrathin/32808065488.html User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36Что такое minPrice я могу догадаться, а откуда брать неизвестные параметры, такие как "callback=jQuery18309359350453220188_1541494543906&=1541494584945" или "abVersion=1&=1541494584945"?
Вот скрипт.
-
@xclsv ,
- В коде этих цифр "18309359350453220188_1541494543906&=1541494584945" нет. Как узнать каким образом браузер их получает, чтобы отправить на сервер?
- И второй вопрос: после клика в браузере меняется код самой страницы, а после таких же гет запросов переменная SAVED_CONTENT просто заменяется ответом последнего гет запроса. Как получить измененный код страницы, который должен получиться при гет запросах?
-
@senerg Есть получше смотри через фидлер отснифай 15414..... это серверное время, перрвые цифры это какой то ключ ищи в фидлере из какого запроса берутся эти данные ctrl+f вводишь в поиск значения и смотришь, может быть в кукисах они , ищи
-
@sparta4wer said in Как через http клиент нажать на кнопку?:
отснифай
Можете пояснить как это? Я в фидлере не силен, эти два гет запроса я получил записью в самом БАСе.
-
@senerg В стриме есть БАС+http https://www.youtube.com/watch?v=fC97DG2MHQM
-
@sparta4wer said in Как через http клиент нажать на кнопку?:
в хроме или в другом браузере в режиме инкогнито производишь действия которые тебе нужны
Так я там и получу те же самые два гет запроса, которые я получил в записи действий баса (те, что выше выложил), разве нет? Как это поможет определить откуда берутся эти параметры в запросах?
-
@sparta4wer Не обращайте внимания, просто он читает через строчку и любит задавать много вопросов))
-
@senerg said in Как через http клиент нажать на кнопку?:
В коде этих цифр "18309359350453220188_1541494543906&=1541494584945" нет. Как узнать каким образом браузер их получает, чтобы отправить на сервер?
Значит ищите в других запросах, не в коде самой страницы. Может быть такое, что не найдете, т.к. эти данные каким-либо образом компилируются или обфусцированы. Это нормальная ситуация для сложных сайтов.
@senerg said in Как через http клиент нажать на кнопку?:
И второй вопрос: после клика в браузере меняется код самой страницы, а после таких же гет запросов переменная SAVED_CONTENT просто заменяется ответом последнего гет запроса. Как получить измененный код страницы, который должен получиться при гет запросах?
Поставьте, пожалуйста, правильно вопрос.
Вам нужен полный код страницы со всеми изменениями после клика на кнопку?
Или только те данные, которые подгружаются при клике?При клике на кнопку сайт отдает функцию jQwery с кучей параметров в json. Для получения данных необходимо воспроизвести эту функцию с нужными параметрами. Задача сложная.
На этом этапе я бы забил и написал скрипт на браузере.P.S. Не обязательно хранить ответы на все запросы в одной и той же переменной.
-
@xclsv , нужны данные, которые подгружаются при клике. Я уже собрал все данные, которые мне нужны на гет запросах, остались только эти, поэтому не хотелось бы браузер подключать. По сути нужно понять, откуда берутся три циферки: 18309359350453220188, 1541494543905 и 1541494584945, где вторая скорее всего просто порядковый номер запроса (в первом запросе она всего на 1 больше, чем во втором запросе).
На одном форуме нашел, что нужно отправлять запрос сюда:
http://freight.aliexpress.com/ajaxFreightCalculateService.htm?productid=123456789&userType=cnfm&country=US&count=1¤cyCode=USDНо почему я не вижу этот запрос в фидлере?
И еще маленький вопрос: что могут означать параметры:
f=d&count=1&abVersion=1 -
-
@xclsv Этот запрос:
https://freight.aliexpress.com/ajaxFreightCalculateService.htm?callback=jQuery18309359350453220188_1541494543905&f=d&productid=32808065488&count=1&minPrice=0.97&maxPrice=0.97¤cyCode=USD&transactionCurrencyCode=USD&sendGoodsCountry=&country=US&province=&city=&abVersion=1&_=1541494584945Я тоже вижу. Там параметры разные.

