大家好,感谢您抽出宝贵的时间来研究我的问题,我已经在此代码上工作了大约1周的时间(我也是编码和python的新手,也是1周的时间)。目前,该循环仅在xrange(x)中有效和'rp':'x'是该xml中可用的正确行数。xml全天更新,我想知道是否有人可以提供使x动态的解决方案?import mechanizeimport urllibimport jsonimport refrom sched import schedulerfrom time import time, sleepfrom sched import schedulerfrom time import time, sleeps = scheduler(time, sleep)def run_periodically(start, end, interval, func):event_time = startwhile event_time < end: s.enterabs(event_time, 0, func, ()) event_time += intervals.run()def getData(): post_url = "urlofinterest_xml"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 toolsparameters = {'page' : '1', 'rp' : '8', 'sortname' : 'roi', 'sortorder' : 'desc' }#####Encode the parametersdata = 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>')pattern4 = re.compile('title=\'Naps posted: (.*) Winners:')pattern5 = re.compile('Winners: (.*)\'><img src=')
2 回答
![?](http://img1.sycdn.imooc.com/5333a1a90001c8d802000200-100-100.jpg)
慕的地10843
TA贡献1785条经验 获得超8个赞
我不确定我是否理解您的问题,但是我认为您想要的是:
rows = xmlload1['rows']
for row in rows:
user_delimiter = row['cell']['username']
selection_delimiter = row['cell']['race_horse']
# ...
如果您需要行索引以及行本身,请使用enumerate:
rows = xmlload1['rows']
for i, row in enumerate(rows):
user_delimiter = row['cell']['username']
selection_delimiter = row['cell']['race_horse']
# ...
通常,如果您for i in range(…)出于除固定次数的迭代之外的任何其他目的进行操作,则说明这样做是错误的。通常有一个要迭代的集合;只是找到它并对其进行迭代。
添加回答
举报
0/150
提交
取消