python - Shodan.py 搜索在打印匹配列表时不打印完整的结果集

标签 python python-3.x shodan

我正在尝试以 IP:PORT 格式打印出我正在执行的特定查询的完整结果列表。但是它只打印部分金额。

results['total'] 打印 1799(这也是在 Shodan 网站上执行搜索时的结果数量),但是在打印实际匹配项时,它只打印 99 个结果。

这可能是一些基本问题,例如不显示所有结果页面。我有一个 Shodan 教育帐户。

from shodan import Shodan

api = Shodan('APIKEY')

# Search Shodan
results = api.search('SearchQuery')

# Results found: 1799 
print('Results found: {}'.format(results['total']))

# Prints 99 results. 
for result in results['matches']:
    print(str(result['ip_str']) + ":" + str(result['port']))

预期:1799 个结果 实际:100 个结果

提前致谢!

最佳答案

Shodan 只返回 contains 100 results 的第一页,对超出页面的任何进一步查询将花费 1 query credit .

要获取更多页面:

api.search('SearchQuery', page=2) 等...

关于python - Shodan.py 搜索在打印匹配列表时不打印完整的结果集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53992664/

相关文章:

python - 如何从 SQLAlchemy 表达式中获取原始的、已编译的 SQL 查询?

Python:如何从AWS S3读取和加载Excel文件?

javascript - 获取旋转图像中某个点的新 x,y 坐标

python - Jinja 的循环变量在 include-d 模板中不可用

javascript - Selenium + XPath : element not found

python-3.x - 列表列表中的Python 3列表理解以转换类型

python - 绍丹。获取网络的所有开放端口

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

python - Tensorflow - 可训练变量不随时间变化