当请求的数据不可用时,我偶尔会查询服务器以获取JSON并接收404 HTML页面。
因此,我必须检查以确保我期望的JSON实际上是json而不是HTML。我现在通过检查一个我可以期望在HTML中的字符串包含在响应中来实现这一点,但我认为必须有更好的方法来实现这一点。
答案 0 :(得分:2)
找到第一个非空白字符。如果它是“<”然后你有HTML。
另外,请检查内容类型标头和HTTP状态代码。
答案 1 :(得分:0)
你应该能够告诉你收到了404,因为响应代码不是200.那就是:
import urllib
resp = urllib.urlopen('http://example.com/')
if resp.getcode() == 200:
rejoice()
if resp.getcode() == 404:
sulk()