gpt4 book ai didi

python - 属性错误 : 'str' object has no attribute '_request' for shodan api

转载 作者:太空宇宙 更新时间:2023-11-03 11:00:36 25 4
gpt4 key购买 nike

import shodan
import sys
from ConfigParser import ConfigParser

#grab the api key from auth.ini
config = ConfigParser()
config.read('auth.ini')
SHODAN_API_KEY = config.get('auth','API_KEY')

#initialize the api object
api = shodan.Shodan(SHODAN_API_KEY)\

# Input validation
if len(sys.argv) == 1:
print 'Usage: %s <search query>' % sys.argv[0]
sys.exit(1)

try:

query = ' '.join(sys.argv[1:])
parent = query
exploit = api.Exploits(parent)
#WHY DOESNT THIS WORK
#AttributeError: 'str' object has no attribute '_request'
print exploit.search(query)

except Exception, e:
print 'Error: %s' % e
sys.exit(1)

我使用 Python 2.7我得到 AttributeError: 'str' object has no attribute '_request'回溯错误在 Shodan API 的 client.py 中显示第 79 行,是我的问题还是他们的代码有问题?

这是回溯

Traceback (most recent call last):
File "exploitsearch.py", line 26, in <module>
print exploit.search('query')
File "/usr/local/lib/python2.7/dist-packages/shodan/client.py", line 79, in search
return self.parent._request('/api/search', query_args, service='exploits')
AttributeError: 'str' object has no attribute '_request'

最佳答案

我是 Shodan 的创始人,也是您正在使用的相关库的作者。正确答案由上面的 John Gordon 提供:

您不需要实例化 Exploits 类,它会在您创建 Shodan() 实例时自动为您完成。这意味着您可以直接搜索事物而无需任何额外工作:

    api = shodan.Shodan(YOUR_API_KEY)
results = api.exploits.search('apache')

关于python - 属性错误 : 'str' object has no attribute '_request' for shodan api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33441054/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com