我正在尝试从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))
我意识到这是一个遥不可及的过程,但是什么可能导致此错误?我什至找不到与互联网上任何地方的错误远程相关的任何内容。
答案 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日起停用,请改用以下内容,