额外的?=和通过AJAX调用时GET请求头中的数字

2024-09-19 23:30:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用Python来创建一个特定类型的网站(例如this one),它使用AJAX请求和jquery来加载它的一些内容(我也知道非常好的post here,但目前我认为Selenium对于我的问题可能是不必要的)。你知道吗

我可以看到使用Firebug加载菜单时,cookies以逻辑方式设置,使用编号系统对事件进行分组,例如:

(Sport, Country, Competition, Event) 

所有足球、英格兰项目的数字都是

(7, 55,0,0)

然后,当调用Javascript函数updateCenter()时,它使用这组cookie来基于这些cookie值构建URL,如:

 var loadUrl = "/_betting/getCenterColumn/" + centerStateCookie + "/" + selectedSport
 + "&" + selectedCategory + "&" + selectedCompetition + "&" + selectedEvent + "&" + 
 selectedLiveNowEvent + "&" + expandBetNbrInActiveSettledBets;

对于我上面的例子,这看起来像:

/_betting/getCenterColumn/displayEventsFromCategory/7&55&0&0&0&0

最后,AJAX请求用从该URL加载的内容更新center DIV: (在处理请求的同时,.html(ajax_load)初始调用只是加载了一个漂亮的旋转计时器gif):

$("#PluginBettingCenterContent").html(ajax_load).load(loadUrl);

一切都很好,但是Firebug XHR请求实际上表明请求的GET链接与上面的不完全相同,但是附加了一些数字:

 GET /_betting/getCenterColumn/displayEventsFromCategory/7&55&0&0&0&0?_=1392198690842

在这样一个AJAX请求中,这个?_=1392198690842来自哪里?你知道吗

由于我可以轻松地抓取并构建进入AJAX加载的URL,我希望直接抓取这些URL,但我不明白这个URL GET请求的最后一组数字和?_=是什么,以及我如何模拟计算它们。。。。你知道吗


Tags: url类型内容getcookiehtmlloadajax
1条回答
网友
1楼 · 发布于 2024-09-19 23:30:53

URL中的timestamp参数很可能是可选的。你知道吗

但是,如果您想像浏览器一样操作,可以手动附加时间戳:

>>> import time
>>> url = 'http://example.com/index'
>>> '%s?_=%d' % (url, time.time() * 1000)
'http://example.com/index?_=1392249064418'

相关问题 更多 >