【发布时间】:2021-10-28 05:21:07
【问题描述】:
这是我正在抓取的网页:http://laxreports.sportlogiq.com/nll/GS2200.html
下面是我创建的蜘蛛的代码:
import scrapy
class MatchesSpider(scrapy.Spider):
name = 'matches'
allowed_domains = ['laxreports.sportlogiq.com']
start_urls = ['http://laxreports.sportlogiq.com/nll/GS2200.html']
def parse(self, response):
tables = response.xpath('//table')
print(tables)
table = tables[0].xpath('//tbody')
我看到已为此 XPath 表达式选择了 22 个表,但我的问题是我不完全了解如何选择每个单独的表并提取其内容。
我是 scrapy 的初学者,在网上搜索解决方案后,我看到的只是如何使用类或 ID 选择表,在这种情况下,这不是一个选项。
【问题讨论】:
-
无法查看您的网站。它说访问被拒绝。
-
我去掉了url后面的斜杠,现在可以查看页面了。或者尝试转到nll.com/schedule/scores 并将鼠标悬停在其中一场比赛上,您应该会看到一个标有“游戏回顾”的按钮出现。点击它可以看到我正在谈论的页面。
-
你的意思是你想要所有的表?那你为什么不简单地循环它们呢?
-
我是这方面的初学者,我不知道如何遍历它们。