首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何计算[<Response [300]>、<Response [404]>、.中有多少response.status_code?

如何计算[<Response [300]>、<Response [404]>、.中有多少response.status_code?
EN

Stack Overflow用户
提问于 2022-05-02 22:43:55
回答 1查看 30关注 0票数 0

我怎么能数出发电机后我有多少response_code?需要总response_code、总response_code "200“和总response_code "403”

代码语言:javascript
复制
  .......rest of code.......

folders = []
for path in directory_to_find:
    folders.append(f'{site_link}{path}')

    lnk_folders = (grequests.head(url, timeout=3, stream=True, verify=False, allow_redirects=False) for url in folders)
status = []
for response in grequests.map(lnk_folders):
    status.append(response)
    if response != None:
        find_progress = find_progress + 1
        if response.status_code == requests.codes.ok:     
            .......rest of code.......


  .......rest of code.......


print(status)

[<Response [300]>, <Response [404]>, <Response [404]>, <Response [404]>, <Response [404]>, 
<Response [404]>, <Response [404]>, <Response [404]>, <Response [404]>, <Response [404]>,     
<Response [404]>, <Response [404]>, <Response [404]>, <Response [404]>, <Response [404]>,         
<Response [404]>, <Response [404]>, <Response [404]>, <Response [404]>, <Response [404]>, 
<Response [404]>, <Response [300]>, <Response [404]>, <Response [404]>, <Response [404]>, 
<Response [404]>, <Response [404]>, <Response [404]>]

我需要像打印时那样

代码语言:javascript
复制
print(ok_found)
13

print(forbbiden)
62

print(rest_statcode)
45

非常感谢你解释我该怎么做。

EN

回答 1

Stack Overflow用户

发布于 2022-05-03 05:40:04

您可以遍历status列表并收集感兴趣的状态代码,如下例所示:

代码语言:javascript
复制
from http import HTTPStatus
from requests import request

status = []

response = request(method="GET", url="http://www.google.com")
status.append(response)  # OK

response = request(method="POST", url="http://www.google.com")
status.append(response)  # METHOD_NOT_ALLOWED

print(status)

ok = []
method_not_allowed = []

for item in status:
    if item.status_code == HTTPStatus.OK.value:
        ok.append(item)
    elif item.status_code == HTTPStatus.METHOD_NOT_ALLOWED.value:
        method_not_allowed.append(item)

print(f"Total requests: {len(status)}, status ok: {len(ok)}, method not allowed: {len(method_not_allowed)}")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72093128

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档