найти скрытый запрос URL, который веб-сайт делает после отправки формы, для проверки - PullRequest
1 голос
/ 11 января 2020

Я пытаюсь удалить данные из https://ipindiaservices.gov.in/tmrpublicsearch/frmmain.aspx с помощью BeautifulSoup. Но запрос, который делает этот сайт для получения данных, не виден. (Пример: если мы введем «Yahoo» в качестве Wordmark и «9» в качестве Class. Он перенаправит на URL https://ipindiaservices.gov.in/tmrpublicsearch/tmsearch.aspx?tn=146710314&st=Wordmark.

. Я попытался использовать inte rnet и несколько комбинаций для проверки и сгенерировать это число, но не удалось. Есть ли какие-либо способы, которыми мы можем найти способ найти окончательный URL-запрос? Я воспользуюсь этим и сделаю запрос с помощью пакета Requests.

1 Ответ

1 голос
/ 12 января 2020

Когда вы нажимаете кнопку Поиск, запрос отправляется на https://ipindiaservices.gov.in/tmrpublicsearch/frmmain.aspx. Это не запрос GET.

Входные данные (Wordmark, класс) отправляются на этот URL как запрос POST. Вам нужно POST это как данные формы (Вы можете найти все поля на вкладке сети) по этому URL.

Окончательный скрипт будет выглядеть так:

import requests

session = requests.Session()

formData = {
    ctl00$ContentPlaceHolder1$TBWordmark:'Wordmark'
    ctl00$ContentPlaceHolder1$TBClass: 9

    #There are many other fields you need to include.
    #Go to Network Tab > Form Data
}

response = session.post(URL = "https://ipindiaservices.gov.in/tmrpublicsearch/frmmain.aspx"
, data = formData)

response = session.get("https://ipindiaservices.gov.in/tmrpublicsearch/tmsearch.aspx?tn=146710314&st=Wordmark")
# Send this `GET` request in the same session.

Примечание : Вам также может понадобиться отправить заголовки.

...