py.user.next
Там не только посмотреть надо, но и скопировать точно.
OMG, парочка заголовков. Тебе их сложно скопировать из консоли? Может ты ей просто не умеешь пользоваться?)
py.user.next
Браузер не обязан это всё делать. Если он покажет что-нибудь неправильно (ну, там не всё или не в том порядке), то это не считается нарушением его функции.
Это работа браузера делать запрос и принимать ответ. А консоль это средство для РАЗРАБОТЧИКОВ, которые разрабатывают приложения для браузера. Естественно там есть все нужные инструменты, чтобы просмотреть что ушло и что пришло в запросе.
Нас интересует HTTP слой, ниже нам не нужно, поэтому wireshark тут ВООБЩЕ не нужен.
malkir
А что по моему коду? Чего может не создаваться таблица?
Какая ещё таблица? Видимо ты не понимаешь, что есть серверные приложения,
которые работают на сервере и предоставляют API. И есть клиентские приложения, например то, которое работает у тебя в браузере и строит тебе таблицу.
Дак вот, тебе нужны ДАННЫЕ, а данные отдаёт сервер. Отдаёт он их в формате JSON.
Всё что тебе нужно, это понять, что отправлять и в каком виде на сервер, чтобы он тебе отправлял в ответ
данные в формате JSON.
Забудь про wireshark, это тяжёлый инструмент, для более сложных задач.
Научись сначала пользоваться консолью браузера. Если научишься ей пользоваться, то скорее всего
тебе больше ничего не понадобится для подобных задач.
Короче надоело читать вашу переписку ни о чём.
Пошёл на сайт. Естественно открыл консоль, сделал запрос, мне пришёл ответ(твоя заветная таблица)
ВСЁ, я смотрю что мой браузер отправил. Вся фишка в дополнительных заголовках с частью GV-.
Клиент их добавляет в запрос. Посмотрел на них, скопировал к себе.
Дальше мне просто осталось сделать запрос с помощью библиотеки requests.
Не трогай библиотеку urllib, используй requests, она более высокоуровневая.
Взял, напихал заголовков:
{'Origin': 'http://booking.uz.gov.ua', 'Content-Length': 202, 'Accept-Encoding': 'gzip, deflate', 'Content-type': 'application/x-www-form-urlencoded', 'GV-Unique-Host': 1, 'GV-Ajax': 1, 'Accept': '*/*', 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.132 Safari/537.36', 'GV-Screen': '1440x900', 'Connection': 'keep-alive', 'Cookie': '_gv_sessid=ega79pca50fjtpv4r02f2ul0p1; _gv_lang=uk; HTTPSERVERID=server2; __utma=31515437.727071730.1436907395.1437117867.1437123736.3; __utmb=31515437.2.10.1437123736; __utmc=31515437; __utmz=31515437.1437123736.3.3.utmcsr=python.su|utmccn=(referral)|utmcmd=referral|utmcct=/forum/topic/27685/', 'GV-Referer': 'http://booking.uz.gov.ua/', 'GV-Token': '092add0b9ab4a37f3b3a4e6c525ce2f7', 'GV-Referer-Src': 'http://python.su/forum/topic/27685/?page=1'}
Составил словарь с данными, которые буду отправлять на сервер:
{'another_ec': 0,
'date_dep': u'24.07.2015',
'search': '',
'station_from': u'\u041a\u0438\u0457\u0432',
'station_id_from': 2200001,
'station_id_till': 2208001,
'station_till': u'\u041e\u0434\u0435\u0441\u0430',
'time_dep': u'00:00',
'time_dep_till': ''}
Записал url:
url = 'http://booking.uz.gov.ua/purchase/search/'
Делаю запрос:
In [142]: requests.post(url, data=data, headers=h)
Out[142]: <Response [200]>
ВСЁ, никаких проблем!
Смотрю ответ:
In [145]: r.content
Out[145]: '{"value":[{"num":"761\\u041b","model":3,"category":1,"from":{"station_id":"2200001","station":"\\u041a\\u0438\\u0457\\u0432-\\u041f\\u0430\\u0441\\u0430\\u0436\\u0438\\u0440\\u0441\\u044c\\u043a\\u0438\\u0439","date":1437707520,"src_date":"2015-07-24 06:12:00"},"till":{"station_id":"2208001","station":"\\u041e\\u0434\\u0435\\u0441\\u0430-\\u0413\\u043e\\u043b\\u043e\\u0432\\u043d\\u0430","date":1437732360,"src_date":"2015-07-24 13:06:00"},"types":[{"title":"\\u0421\\u0438\\u0434\\u044f\\u0447\\u0438\\u0439 \\u043f\\u0435\\u0440\\u0448\\u043e\\u0433\\u043e \\u043a\\u043b\\u0430\\u0441\\u0443","letter":"\\u04211","places":124},{"title":"\\u0421\\u0438\\u0434\\u044f\\u0447\\u0438\\u0439 \\u0434\\u0440\\u0443\\u0433\\u043e\\u0433\\u043e \\u043a\\u043b\\u0430\\u0441\\u0443","letter":"\\u04212","places":283}]},{"num":"761\\u0428","model":3,"category":1,"from":{"station_id":"2200001","station":"\\u041a\\u0438\\u0457\\u0432-\\u041f\\u0430\\u0441\\u0430\\u0436\\u0438\\u0440\\u0441\\u044c\\u043a\\u0438\\u0439","date":1437707520,"src_date":"2015-07-24 06:12:00"},"till":{"station_id":"2208001","station":"\\u041e\\u0434\\u0435\\u0441\\u0430-\\u0413\\u043e\\u043b\\u043e\\u0432\\u043d\\u0430","date":1437732360,"src_date":"2015-07-24 13:06:00"},"types":[{"title":"\\u0421\\u0438\\u0434\\u044f\\u0447\\u0438\\u0439 \\u0434\\u0440\\u0443\\u0433\\u043e\\u0433\\u043e \\u043a\\u043b\\u0430\\u0441\\u0443","letter":"\\u04212","places":29}]},{"num":"023\\u041c","model":0,"category":0,"from":{"station_id":"2200001","station":"\\u041c\\u043e\\u0441\\u043a\\u0432\\u0430 \\u041a\\u0438\\u0435\\u0432\\u0441\\u043a\\u0430\\u044f","date":1437722340,"src_date":"2015-07-24 10:19:00"},"till":{"station_id":"2208001","station":"\\u041e\\u0434\\u0435\\u0441\\u0430-\\u0413\\u043e\\u043b\\u043e\\u0432\\u043d\\u0430","date":1437758820,"src_date":"2015-07-24 20:27:00"},"types":[{"title":"\\u041a\\u0443\\u043f\\u0435","letter":"\\u041a","places":5},{"title":"\\u041f\\u043b\\u0430\\u0446\\u043a\\u0430\\u0440\\u0442","letter":"\\u041f","places":16}]},{"num":"763\\u041a","model":3,"category":1,"from":{"station_id":"2200001","station":"\\u0414\\u0430\\u0440\\u043d\\u0438\\u0446\\u044f","date":1437745140,"src_date":"2015-07-24 16:39:00"},"till":{"station_id":"2208001","station":"\\u041e\\u0434\\u0435\\u0441\\u0430-\\u0413\\u043e\\u043b\\u043e\\u0432\\u043d\\u0430","date":1437769980,"src_date":"2015-07-24 23:33:00"},"types":[{"title":"\\u0421\\u0438\\u0434\\u044f\\u0447\\u0438\\u0439 \\u043f\\u0435\\u0440\\u0448\\u043e\\u0433\\u043e \\u043a\\u043b\\u0430\\u0441\\u0443","letter":"\\u04211","places":118},{"title":"\\u0421\\u0438\\u0434\\u044f\\u0447\\u0438\\u0439 \\u0434\\u0440\\u0443\\u0433\\u043e\\u0433\\u043e \\u043a\\u043b\\u0430\\u0441\\u0443","letter":"\\u04212","places":264}]},{"num":"763\\u041e","model":3,"category":1,"from":{"station_id":"2200001","station":"\\u0414\\u0430\\u0440\\u043d\\u0438\\u0446\\u044f","date":1437745140,"src_date":"2015-07-24 16:39:00"},"till":{"station_id":"2208001","station":"\\u041e\\u0434\\u0435\\u0441\\u0430-\\u0413\\u043e\\u043b\\u043e\\u0432\\u043d\\u0430","date":1437769980,"src_date":"2015-07-24 23:33:00"},"types":[{"title":"\\u0421\\u0438\\u0434\\u044f\\u0447\\u0438\\u0439 \\u0434\\u0440\\u0443\\u0433\\u043e\\u0433\\u043e \\u043a\\u043b\\u0430\\u0441\\u0443","letter":"\\u04212","places":80}]},{"num":"221\\u041a","model":0,"category":0,"from":{"station_id":"2200001","station":"\\u041a\\u0438\\u0457\\u0432-\\u041f\\u0430\\u0441\\u0430\\u0436\\u0438\\u0440\\u0441\\u044c\\u043a\\u0438\\u0439","date":1437757020,"src_date":"2015-07-24 19:57:00"},"till":{"station_id":"2208001","station":"\\u041e\\u0434\\u0435\\u0441\\u0430-\\u0413\\u043e\\u043b\\u043e\\u0432\\u043d\\u0430","date":1437790320,"src_date":"2015-07-25 05:12:00"},"types":[{"title":"\\u041b\\u044e\\u043a\\u0441","letter":"\\u041b","places":2}]}],"error":false,"data":null}'
Вот они данные, в формате JSON.
И никакого AXE эффекта у меня не было!