Я хочу отправить запрос Python на сайт ASP, но доступ к сайту запрещен - PullRequest
0 голосов
/ 25 июня 2018

URL-адрес сайта равен http://rajresults.nic.in/resbserx18.htm при отправке данных, но при получении ответа URL-адрес изменяется в ASP. Так какой URL-адрес пользователя нужно отправить запрос ASP или HTML?

Запрос:

import requests
# data for get result
>>> para = {'roll_no':'2000000','B1':'Submit'}
# this is url where data is entered and get asp response
>>> url = 'http://rajresults.nic.in/resbserx18.htm'
>>> result = requests.post(url,data=para)
>>> result.text

Ответ

'The page you are looking for cannot be displayed because an invalid method (HTTP verb) is being used.'

1 Ответ

0 голосов
/ 25 июня 2018

Хорошо, после небольшой работы я обнаружил, что с заголовками возникли некоторые проблемы. Я сделал несколько проб и ошибок и обнаружил, что он проверяет, установлен ли заголовок Host.

Для отладки я просто удалил заголовки запросов chrome и обнаружил, к какому именно веб-сервису это относится.

import requests

headers = {
    "Host": "rajresults.nic.in"
}

r = requests.post('http://rajresults.nic.in/resbserx18.asp',
        headers = headers,
        data = {'roll_no': 2000000, 'B1': 'Submit'}
)

print(r.text)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...