我一直试图从那些向高中足球运动员提供奖学金的学校中挑出竞争对手,但我遇到了一些问题
下面是一个示例页面:https://n.rivals.com/content/prospects/2021/de-javion-stepney-235539#school-interests
一旦扩展表,我就可以删除所有学校的名称,但我只想删除与学校在同一行中有学校提供复选标记的学校。我该怎么做
此外,虽然我能够刮取学校名称,但在进入下一个播放器页面之前,它经常会重复随机行,我不知道为什么
以下是我到目前为止的情况:
Offered_By_List = []
for s in driver.find_elements_by_class_name('school-logo-name'):
Offered_By_List.append(s)
任何帮助都将不胜感激,我在这上面停留了一段时间
使用
ancestor
,这只是为了刮取学校名称:但是,如果您想刮取每行的所有数据,只需删除上面xpath中的
//div[@class="school-logo-name"]
我不会在这里使用Selenium,因为数据在html中作为元素属性中的有效json返回。有几种方法可以提取学校名称,但我用pandas做了,因为你也可以将其放入表格中,如果你想要更多的数据而不仅仅是学校名称,你可以随心所欲地操作它。我还抓到了球员的个人资料:
输出:
仅此列表:
您可以使用xpath实现表中的复选标记和行之间的关系,下面来自示例的xpath示例将获取具有复选标记的行。您会注意到,这个xpath只选择了带有复选标记的行(本页中为15)。然后将其另存为数组,遍历所有行并保存学校名称
或者直接使用下面的代码
相关问题 更多 >
编程相关推荐