【问题标题】:Check if return a JSON or not检查是否返回 JSON
【发布时间】:2021-09-09 12:52:07
【问题描述】:

我编写了一个简单的脚本来检查 URL 是否返回 JSON。

我正在使用请求来检查是否返回 200 并且正在工作。 但现在我需要检查 URL 是否返回 JSON。我不需要打开它。只需检查是否是 JSON,因为即使 URL 返回 200 也不意味着这是我需要的 JSON 文件。

如何检查 result.json() 是否为真?我尝试检查 len,但如果网站没有 JSON,我的脚本就会崩溃。

import pandas as pd
from requests import get
lista = pd.read_csv('sites.csv', sep=',')
df = pd.DataFrame(lista, columns=['Site', 'Json'])
newdf = df.assign(Site=df['Site'].map(str) + 'Json')


for i in newdf['Site']:
    result = get(i)
    result.json()

【问题讨论】:

  • @jps 感谢您的编辑 :)

标签: python json pandas request


【解决方案1】:

可以选择检查响应标头,这意味着您根本不需要尝试解析响应:

'application/json' in result.headers.get('Content-Type')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-24
    • 2019-01-13
    • 1970-01-01
    • 1970-01-01
    • 2019-06-20
    • 2012-12-30
    • 2021-05-15
    • 2014-02-15
    相关资源
    最近更新 更多