无法调用FBO.gov的Web API提供的任何方法

时间:2019-07-16 12:21:14

标签: python-3.x zeep

我正在尝试从fbo.gov那里获取数据,这是一个政府网站,他们在其中发布供应商可以投标的合同。他们有一个document,其中包含通过SOAP访问网站上的信息的方式请求,这是我正在尝试做的。尽管该文档中的所有示例均使用PHP,但我仍尝试使用Python发出请求,因为以前从未使用PHP进行任何操作。

要使用Python发出SOAP请求,我正在使用zeep

现在,我可以通过HTTP成功验证自己的身份,但是无论我尝试调用哪种方法,我总是会遇到相同的错误:This user has an inactive agency.

这是我用来发送请求的代码

from requests import Session
from requests.auth import HTTPBasicAuth
import zeep
from zeep.transports import Transport

test = "https://fbo-test.symplicity.com"
prod = "https://fbo.gov"

session = Session()
session.auth = HTTPBasicAuth("sample_username", "sample_password")
client = zeep.Client(f"{test}/ws/fbo_api.php?wsdl", transport=Transport(session=session))

dictionary = {"notice_type": "PRESOL"}
print(client.service.getList(data=dictionary))

我意识到这是一个遥不可及的过程,但是什么可能导致此错误?我什至找不到与互联网上任何地方的错误远程相关的任何内容

2 个答案:

答案 0 :(得分:0)

每个联邦服务台:

  

FBO API仅适用于政府用户帐户。

某些FBO数据可从以下网址获得:ftp://ftp.fbo.gov

当前,FBO正在迁移到SAM,一旦迁移完成,它将拥有一个公共API。新的API正在开发中,最新规范位于:https://open.gsa.gov/api/get-opportunities-public-api/

答案 1 :(得分:0)

FBO.GOV随ftp.fbo.gov批量下载一起从2019年12月12日起停用,请改用以下内容,

https://open.gsa.gov/api/sam-entity-extracts-api/