我在使用scrapy时遇到了问题。我在终端中用这些代码创建了nba.json(scrapy crawl nba-o nba.json),但是json是空的。我不知道为什么。另外,在此之前,我在另一个JSON文档中使用了这些代码,它工作正常。有人能帮助我吗?请提前感谢!
import scrapy
class QuotesSpider(scrapy.Spider):
name = "nba"
start_urls = ["https://www.espn.com/nba/stats/_/season/2020/seasontype/2"]
def parse(self, response):
for content in response.xpath("//*[@id='fittPageContainer']/div[3]/div/div/section[1]/div/div[4]/div[1]/div/div[2]/div/div/div[2]/table/tbody/tr"):
yield {
"name" : content.xpath('td[1]/div/a/text()').get(),
"team" : content.xpath('td[1]/div/span[2]/text()').get(),
"ppg" : content.xpath('td[2]/text()').get()
}
next_page = response.xpath('').get()
if next_page is not None:
yield response.follow(next_page, callback = self.parse)
1条答案
按热度按时间plicqrtu1#
其中一些信息是通过javascript呈现的。
你可以使用scrapy-playwright插件来获得渲染的内容。
然后settings.py
那么在您的spider中,您只需要向请求添加剧作家 meta标记。
例如:
输出: