在python浏览器上获取太多结果

在python浏览器上获取太多结果,python,xpath,printing,xvfb,dryscrape,Python,Xpath,Printing,Xvfb,Dryscrape,朋友们,我想在espncricinfo上提取实时分数,我尝试使用Drysrake:- Import dryscrape as d d.start_xvfb() br = d.Session() br.visit('http://www.espncricinfo.com/ci/engine/match/index.html?view=live') for x in br.xpath('//*[@class = "innings-info-1"]'): x #print 4 results fo

朋友们,我想在espncricinfo上提取实时分数,我尝试使用Drysrake:-

Import dryscrape as d
d.start_xvfb()
br = d.Session()
br.visit('http://www.espncricinfo.com/ci/engine/match/index.html?view=live')
for x in br.xpath('//*[@class = "innings-info-1"]'):
 x
#print 4 results 
for y in br.xpath('//*[@class = "innings-info-2"]'):
 y
#print 4 results of 2nd innings
#but when i try combian then print tooo many results
for x in br.xpath('//*[@class = "innings-info-1"]'):
 for y in br.xpath('//*[@class = "innings-info-2"]'):
  x,'\n',y
#need 4+4=8 results but python prints 16 results 

请帮帮我你有双回路。第一个有4个元素,第二个有4个元素。通过第二个循环迭代4次,得到4+4+4+4=16。您的代码按其应该的方式执行

例如,如果您想获得结果列表,您可以这样做:

x = [x for x in br.xpath('//*[@class = "innings-info-1"]')]
y = [y for y in br.xpath('//*[@class = "innings-info-2"]')]
print(list(zip(x,y))

我尝试使用mechanize browse,但未能提取,然后我尝试使用zip(x,y)和枚举(x)中的for i;打印x,'\n',y[i],但失败我不确定您期望的输出是什么。为什么不能像以前那样为循环单独设置
,而不是嵌套它们?或者你可以在zip中为x,y做
(br.xpath('/*[@class=“innings-info-1”]')、br.xpath('/*[@class=“innings-info-2”]'):
但这不会给你8个结果,你仍然只能得到4行打印输出。实际上,我在那里没有正确的答案,由于您在
打印中有
\n
,但随后您的输出出现了奇怪的错位。谢谢roganjosh