Очистка страницы AJIAX с python: как реплицировать POST-запрос - PullRequest
0 голосов
/ 11 февраля 2019

Я новичок в изучении веб-страниц и хотел бы проверить результаты этой формы , повторив запрос AJIAX.Как мне сделать запрос, передав данные формы ниже?

GOTOSTEP: 2
LANG: it
flag_ar: 
trta: ISCPOZ
datea: 12/02/2019
res: 
paxan: 1
paxbn: 0
paxin: 0
ad: 0
veicolo: 
rimorchio: 
exl: 
exa: 
bic: 0
bag1: 0
bag2: 0
bag3: 0
dnr: 0
trtr: 
dater: 
rres: 
rpaxan:  
pol_insurance: 
Q1: 000004
Q2: 000001
Q3: GESTOUR - CALL CENTER
Q9: 0
JSON_AGE_DATA: {"STATUS":"OK","STATUS_MSG":"","Q1":"000004","Q2":"000001","Q3":"GESTOUR - CALL CENTER","ALT_CODE":0}
JSON_AGE_LISTS: {"MINICR":"MINICR","ST01AS":"ST01AS","ST01BS":"ST01BS","ST02AS":"ST02AS","ST02BS":"ST02BS","ST04BS":"ST04BS","ST05BS":"ST05BS","ST11AS":"ST11AS","ST11BS":"ST11BS","STAS":"STAS"}
B2C_ALT_CODE: 0
LOCK: 

1 Ответ

0 голосов
/ 12 февраля 2019

Библиотека requests имеет функцию post(), которая позволяет передавать data в качестве словаря Python.Это можно сделать следующим образом:

from bs4 import BeautifulSoup
import requests

data = {
    "GOTOSTEP" : 2,
    "LANG" : "it",
    "flag_ar" : "",
    "trta" : "ISCPOZ",
    "datea": "12/02/2019",
    "res" : "",
    "paxan" : 1,
    "paxbn" : 0,
    "paxin" : 0,
    "ad" : 0,
    "veicolo" : "",
    "rimorchio" : "",
    "exl" : "",
    "exa" : "",
    "bic" : 0,
    "bag1" : 0,
    "bag2" : 0,
    "bag3" : 0,
    "dnr" : 0,
    "trtr" : "",
    "dater" : "",
    "rres" : "",
    "rpaxan" :  "",
    "pol_insurance" : "",
    "Q1" : "000004",
    "Q2" : "000001",
    "Q3" : "GESTOUR - CALL CENTER",
    "Q9" : "0",
    "JSON_AGE_DATA" : '{"STATUS":"OK","STATUS_MSG":"","Q1":"000004","Q2":"000001","Q3":"GESTOUR - CALL CENTER","ALT_CODE":0}',
    "JSON_AGE_LISTS" : '{"MINICR":"MINICR","ST01AS":"ST01AS","ST01BS":"ST01BS","ST02AS":"ST02AS","ST02BS":"ST02BS","ST04BS":"ST04BS","ST05BS":"ST05BS","ST11AS":"ST11AS","ST11BS":"ST11BS","STAS":"STAS"}',
    "B2C_ALT_CODE" : 0,
    "LOCK" : "",
}

r = requests.post("http://gestour.nefesy.com/b2c/b2c_maker.php", data=data)
soup = BeautifulSoup(r.content, "html.parser")

for ul in soup.find_all('ul'):
    print([li.text for li in ul.find_all('li')])

Затем можно проанализировать HTML-код с помощью BeautifulSoup.В этом случае он возвращает таблицу данных в виде <ul><li> списков, давая вам:

['', '12/02/2019', '16:05', '1:00', 'DON PEPPINO\xa0', 'BASSISSIMA STAGIONE Ordinario', '13,70 €']
['', '12/02/2019', '19:10', '1:00', 'DON PEPPINO\xa0', 'BASSISSIMA STAGIONE Ordinario', '13,70 €']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...