我有一段代码,当前随着越来越多的用户在一整天与之交互,从XML文件(从网站获得)中为每个用户打印出数据。目前,我的代码循环每5分钟下载一次此数据。
每次运行代码时,它都会生成一个用户及其统计信息列表,前5分钟将打印用户:a,b,c
后5分钟它将打印用户:a,b,c,d,e
第三5分钟它会打印用户:a,b,c,d,e,f,g
我需要什么代码才能执行以打印前5分钟:a,b,c第二个5分钟:d,e第三个5分钟:f,g
一些如何识别某些用户已经被使用的方法。每个用户确实都有一个唯一的用户ID,我想可以将其匹配吗?
附上我的代码示例,以防万一。
import mechanize
import urllib
import json
import re
import random
import datetime
from sched import scheduler
from time import time, sleep
######Code to loop the script and set up scheduling time
s = scheduler(time, sleep)
random.seed()
def run_periodically(start, end, interval, func):
event_time = start
while event_time < end:
s.enterabs(event_time, 0, func, ())
event_time += interval + random.randrange(-5, 45)
s.run()
###### Code to get the data required from the URL desired
def getData():
post_url = "URL OF INTEREST"
browser = mechanize.Browser()
browser.set_handle_robots(False)
browser.addheaders = [('User-agent', 'Firefox')]
######These are the parameters you've got from checking with the aforementioned tools
parameters = {'page' : '1',
'rp' : '250',
'sortname' : 'roi',
'sortorder' : 'desc'
}
#####Encode the parameters
data = urllib.urlencode(parameters)
trans_array = browser.open(post_url,data).read().decode('UTF-8')
xmlload1 = json.loads(trans_array)
pattern1 = re.compile('> (.*)<')
pattern2 = re.compile('/control/profile/view/(.*)\' title=')
pattern3 = re.compile('<span style=\'font-size:12px;\'>(.*)<\/span>')
请发表评论,我已经编码了11天,所以请谅解我正在使用的代码中的任何主要错误,尽管到目前为止,它仍然可以正常工作。
相关分类