当前位置: 首页 > 面试题库 >

使用python向RESTful API发出请求

敖和韵
2023-03-14
问题内容

我有一个RESTful
API,我已在EC2实例上使用Elasticsearch的实现公开了索引内容的语料库。我可以通过从终端机(MacOSX)运行以下命令来查询搜索:

curl -XGET 'http://ES_search_demo.com/document/record/_search?pretty=true' -d '{
  "query": {
    "bool": {
      "must": [
        {
          "text": {
            "record.document": "SOME_JOURNAL"
          }
        },
        {
          "text": {
            "record.articleTitle": "farmers"
          }
        }
      ],
      "must_not": [],
      "should": []
    }
  },
  "from": 0,
  "size": 50,
  "sort": [],
  "facets": {}
}'

如何使用python/requestspython/urllib2(不确定要使用哪个请求-
一直在使用urllib2,但听说请求更好…)将以上转换为API请求?我是否可以通过标题?


问题答案:

使用请求:

import requests
url = 'http://ES_search_demo.com/document/record/_search?pretty=true'
data = '''{
  "query": {
    "bool": {
      "must": [
        {
          "text": {
            "record.document": "SOME_JOURNAL"
          }
        },
        {
          "text": {
            "record.articleTitle": "farmers"
          }
        }
      ],
      "must_not": [],
      "should": []
    }
  },
  "from": 0,
  "size": 50,
  "sort": [],
  "facets": {}
}'''
response = requests.post(url, data=data)

然后,根据您的API返回的响应类型,您可能需要查看response.textresponse.json()(或可能response.status_code先检查)。请参阅此处的快速入门文档,尤其是本节。



 类似资料:
  • 我有一个RESTful API,我在EC2实例上使用Elasticsearch实现来索引内容语料库。我可以通过从我的终端(MacOSX)运行以下命令来查询搜索: 我如何使用python/requests或python/urllib2将上述内容转换为API请求(不确定应该选择哪一个-一直在使用urllib2,但听说请求更好?我是作为标题传递还是以其他方式传递?

  • 问题内容: 我正在尝试向以下页面发出POST请求:http : //search.cpsa.ca/PhysicianSearch 为了模拟单击“搜索”按钮而不填写任何表单,该表单会将数据添加到页面。通过在chrome开发人员工具中查看“网络”标签时点击按钮,我获得了POST标头信息。我之所以发布此信息,而不是仅仅从其他类似问题中复制解决方案,是因为我认为我可能没有获得正确的标题信息。格式是否正确,

  • 问题内容: 我需要在应用程序中使用SOAP端点进行请求。因此,我需要在请求中传递xml数据,并在响应中接收xml数据。 我已将axios帖子与json数据一起使用,但如何将其用于xml?PFB我正在使用相同的代码,但是它不起作用。 JSON发布请求: TIA,如果您有任何经验,请分享。 问题答案: 此代码有助于提出肥皂请求

  • 问题内容: 我想使用Tor向网页发出多个GET请求。我想为每个请求使用不同的ipaddress。 使用此,我提出了一个请求。如何更改ipaddress来做另一个? 问题答案: 这是您要使用的代码(使用来下载词干包) 祝你好运,希望能成功。

  • thinkphp5编写的restful风格的API,集API请求处理,权限认证,自动生成文档等功能

  • 问题内容: 我正在尝试使用Python 2进行页面的HEAD请求。 我在尝试 与包含 但是我越来越 如果我只是做 然后就可以了 问题答案: 这很好用: 经过python入侵的快速而肮脏的HTTPd的测试: 我添加了一个自定义标头字段X-REQUEST_METHOD以显示它的工作:) 这是HTTPd日志: 编辑:还有httplib2