2
試圖圍繞使用請求獲取Javscript加載內容而不產生實際瀏覽器來呈現它。我正在尋找使用請求庫獲取表,但我一直得到504與我的測試代碼,我不是100%爲什麼。Python XHR請求時序輸出
所以我期待在從得到賽馬數據:sports.betway.com/#/horse-racing/uk-and-ireland/haydock
我觀看了網絡流量,發現的源交通。這是使用eventIds號碼致電/ emoapi/emos。
我嘗試這樣做:
import requests
url = 'https://sports.betway.com/emoapi/emos'
params = {
'eventIds': '807789',
'lang': 'en'
}
headers = {'Accept': '*/*',
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'en-US,en;q=0.8',
'Connection': 'keep-alive',
'Content-Length': '271',
'Content-Type': 'application/json',
'Host': 'sports.betway.com',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36'}
#Note: I do also set the origin and ref link in the header but I can't post that many links in a question.
response = requests.post(url, params=params, headers=headers)
print response
fixtures = response.json()
print fixtures
我不能看到我從請求缺少什麼。但打印響應返回作爲
這是在瀏覽器標題哪些請求一大堆IDS的全部有效載荷的一個例子,而不是僅僅是一個我想:
{"eventIds":[807789,808612,808597,807790,808613,808598,807791,808611,808599,807792,808614,808600,807793,808615,808601,807794,808616,808602,807795,808617,807781,808591,807782,808589,807783,808590,807785,808592,807784,808593,807786,808594,807788,808595,807787],"lang":"en"}
而且它的一個POST到該URL,所以我不知道爲什麼它超時。
任何人都可以告訴我哪裏會出錯嗎?這件事顯而易見嗎?