对于python来说是新手,它试图探索从另一种语言导入一个长期开发的项目的可能性,而一个伙伴则发誓Python是我的答案。我已启动并运行IDE,可以正常工作,并且可以将网站上列出的“名称”和“排名”适当地踢到.csv中。
问题出现了,因为我花了最后一个小时试图弄清楚如何在网站上提取“团队参与者”字段。这是一个跨度,这是我第一次遇到scrapy时,在命名空间中有一个空格,这似乎是不明智的。
下面是我的代码,除了将“团队位置”拖到最后一行之外,其他一切都正常。所提供的代码只是我为获得此目标而进行的多次迭代的代表。任何帮助将不胜感激。
import scrapy
class CBS200Spider(scrapy.Spider):
name = "expr"
start_urls = [
'https://www.cbssports.com/fantasy/football/rankings/ppr/top200/',
#'https://www.cbssports.com/fantasy/football/rankings/standard/top200/',
]
def parse(self, response):
for plyr in response.css('div.player-row'):
yield {
'name': plyr.css('.player-name::text').get(),
'rank': plyr.css('.rank::text').get(),
'team': plyr.css('team position::text').get(),
}
答案 0 :(得分:0)
对于CSS team
和position
是两个类,您必须使用dot
两次-不能有空格。
'.team.position::text'
顺便说一句:xpath
将"team position"
当作一个名字。