【问题标题】:The ways to find API in open source website在开源网站中查找 API 的方法
【发布时间】:2021-06-24 12:32:24
【问题描述】:

下午好!我 不知道在哪里看了,所以我决定问。 有一个网站“https://my2.soliq.uz/main/info/search”。 从那里,您需要按 TIN 提取有关企业的数据。 Selenium 和 Request 库已经准备好,但是对于 Request 库,你需要知道这个站点的 API。 然后就可以写“requests.get(api).()”了

请教我如何在这些开放的网站中找到 API

我尝试通过开发工具> 浏览器中的网络进行跟踪,但出现 url:https://my2.soliq.uz/main/info/search/data,但无法点击链接

【问题讨论】:

    标签: python api selenium


    【解决方案1】:

    a) 在 chrome 上打开 url。

    b) 前往检查 -> 网络面板并将请求保存为 HAR 文件

    c) 有很多方法可以使用 .har 文件,例如har to postman collectionhar to python requests

    d) 从响应中,使用 json 提取/过滤 TIN

    【讨论】:

      【解决方案2】:

      如果网站没有任何 API 文档,那么这可能会非常棘手。

      您是对的,使用开发工具 -> 网络选项卡是查看页面访问哪些 URL 的好方法。

      在这种情况下,https://my2.soliq.uz/main/info/search/data 是正确的 URL,但您无法在浏览器中浏览到它的原因是它不接受“GET”请求(浏览的默认设置),但与许多表单一样和 API 端点,它只接受 POST 请求。

      您可以在“网络”选项卡中看到该 url 是通过 POST 请求访问的:

      您可以使用requests.post(url, data) 方法从该网址获取数据。

      查看该方法的文档here

      【讨论】:

      • 一个人做了以下事情(和他没有联系):他在代码里是这样的: api = "my2.soliq.uz/main/info/personal/data?tin= " + set(tin) #api参考我需要了解他是如何找到这个地址的,以便从其他类似站点中找到类似地址。你有什么想法可以在不知情的情况下来到这个地址
      • 通过使用“网络”选项卡,正如您在问题中提到的 - 您的 URL 是正确的。您需要请求 URL 和请求方法。
      猜你喜欢
      • 2011-09-26
      • 1970-01-01
      • 2018-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-30
      • 2020-10-16
      • 1970-01-01
      相关资源
      最近更新 更多