的Python的XPath - 得到正确的顺序
首先,我很抱歉,如果标题还不是很清楚的信息;我不太清楚如何解释我想用标题做什么;无论如何。的Python的XPath - 得到正确的顺序
我碰到一个网站上的一些信息;我已经有我想要的信息,但是当我运行该脚本,我得到的输出如下:
Ivern Jungle Starting Items
Hunter's Talisman
Refillable Potion
Warding Totem
First Goal
Stalker's Blade
Tracker's Knife
Boots of Speed
Hunter's Potion
Vision Ward
Sweeping Lens
Second Goal
当我想它是这样的:
Ivern Jungle Starting Items
Hunter's Talisman
Refillable Potion
Warding Totem
First Goal
Stalker's Blade
Tracker's Knife
Boots of Speed
Hunter's Potion
Vision Ward
Sweeping Lens
Second Goal
我已经尝试了一些东西与代码;这是我能够按照自己的意愿完成工作的唯一途径。 Ivern jungle
是一个标题; Starting Items
是另一个标题,First Goal
是另一个标题;在我首先获得标题和其他信息(项目)之前。这是我现在的代码。
for build_names in guide_page.xpath(".//div[@class='build-container box-shadow-lb']" "/div[1]/div[1]/div[1]/div[1]/div[1]"):
for title in build_names.xpath("div[1]/h2/text() | div[3]/div[1]/div/h2/text() | "
"div[3]/div[1]/div/div/div/a/div[2]/span/text()"):
print(title)
我越来越从title
大部分的信息循环,因为这就是我设法得到它的权利;如果有更有效的方式去做;请让我知道
顺便说,信息是从一个特定的网站,但网站可以改变从另一个特定网站,我得到这样的信息:
Kled The Talker # Title Kled Tank/Ad Top # Title
Mercury's Treads
The Black Cleaver
Titanic Hydra
Frozen Mallet
Dead Man's Plate
Guardian Angel
Kled Ad/LifeSteal # Title
Mercury's Treads
The Black Cleaver
Ravenous Hydra
Death's Dance
Maw of Malmortius
Guardian Angel
正如你可以看到我不明白之间的任何空间;如果您转到first website,您可以看到,在项目部分中,项目部分中每个标题的右侧都有注释;我认为那些将空格放在输出中的是因为second website中没有注释。那么,这是我的主要问题;我怎样才能格式化输出?如果我没有解释得太清楚,请让我知道,我会更新问题,谢谢! :)
回答:
您可以通过使用类往往属性浏览树相当容易一点。这样一来,你可以重写你的脚本是这样的:
for div in page.xpath('//div[contains(@class, "item-wrap")]'): print("\n{bar}\n{title}\n{bar}".format(
bar="#"*20,
title=div.xpath('.//h2/text()')[0].strip()))
print('\n'.join(x.strip() for x in div.xpath(
'.//div[contains(@class, "main-items")]//span/text()')))
输出摘录:
#################### Starting Items
####################
Hunter's Talisman
Refillable Potion
Warding Totem
####################
First Goal
####################
Stalker's Blade
Tracker's Knife
Boots of Speed
Hunter's Potion
Vision Ward
Sweeping Lens
####################
Second Goal
####################
Rod of Ages
Boots of Mobility
Ionian Boots of Lucidity
Boots of Swiftness
Sorcerer's Shoes
Oracle Alteration
这些XPath的效果一样好,你链接到第二页上。
以上是 的Python的XPath - 得到正确的顺序 的全部内容, 来源链接: utcz.com/qa/263296.html