响应对象没有属性'body

5 投票
1 回答
10376 浏览
提问于 2025-04-19 16:56

我正在使用以下代码,这段代码模拟了网页上的XHR请求,用来在选择不同的标签按钮时更新表格的内容:

import requests

url = 'http://www.whoscored.com/stageplayerstatfeed/?field=1&isAscending=false&orderBy=Rating&playerId=-1&stageId=9155&teamId=32"'

params = {'d': date.strftime('%Y%m'), 'isAggregate': 'false'}
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36'}

response = requests.get(url, params=params, headers=headers)

fixtures = response.body
#fixtures = literal_eval(response.content)
print fixtures 

但是这段代码出现了帖子标题中的错误。我猜我需要在requests.get()语句中以某种方式添加'body'这个参数,但我不太确定具体该怎么做。有没有人能帮帮我?

谢谢

1 个回答

9

你要找的属性是 content

>>> import requests
>>> response = requests.get('http://google.com')
>>> response.content
'<!doctype html><html itemscope=""...

实际上,你的代码应该像这样:

import requests

url = 'http://www.whoscored.com/stageplayerstatfeed/?field=1&isAscending=false&orderBy=Rating&playerId=-1&stageId=9155&teamId=32"'

params = {'d': date.strftime('%Y%m'), 'isAggregate': 'false'}
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36'}

response = requests.get(url, params=params, headers=headers)

fixtures = response.content
#fixtures = literal_eval(response.content)
print fixtures 

撰写回答