【问题标题】:Make `_doPostBack` requests using postman使用邮递员发出`_doPostBack`请求
【发布时间】:2020-11-15 14:07:35
【问题描述】:

我正在从https://www.iob.in/bc_locator.aspx 抓取一些数据,页面通过__doPostBack('ctl00$ContentPlaceHolder1$gv_Branch','Page$n') 之类的请求为表格的下一个内容加载数据,其中n 是页码。

我可以通过 URL 发出正常请求,但找不到通过邮递员模仿 __doPostBack('ctl00$ContentPlaceHolder1$gv_Branch','Page$n' 的方法。有相同的想法吗?

【问题讨论】:

    标签: python python-3.x web-scraping python-requests postman


    【解决方案1】:

    此页面是使用 Asp.Net 开发的网络表单。当您第一次访问该网站时,您会得到一个 cookie ASP.NET_SessionId 来识别您的机器。您需要将此 cookie 附加到回发中,否则会失败。

    要以编程方式实现这一点,只需将简单的 GET 转换为 https://www.iob.in 并检索 cookie。然后发送 POSThttps://www.iob.in/bc_locator.aspx 并附上 cookie。

    邮递员:

    {
        "__EVENTTARGET": "ctl00$ContentPlaceHolder1$gv_Branch",
        "__EVENTARGUMENT": "Page$1"
    }
    

    为了通过运行 Asp 事件导航到其他页面,您可能需要__VIEWSTATE__VIEWSTATEGENERATOR__EVENTVALIDATION等,从原始页面获取。

    【讨论】:

      猜你喜欢
      • 2021-12-14
      • 2018-07-16
      • 2017-10-29
      • 1970-01-01
      • 1970-01-01
      • 2019-05-12
      • 1970-01-01
      • 2017-06-17
      • 1970-01-01
      相关资源
      最近更新 更多