我正试图在 http://www.casemanagementguidebook.ie/Case-Management-Listings/Accommodation---Homelessness.aspx 上抓取表格这样我就可以将所有值输入到 MySQL 数据库中。当尝试在 shell 中执行此操作时,我尝试了命令
table = response.css('table.listing-table')[0]
它给了我一个表值显示
table = Selector xpath=u"descendant-or-self::table[@class and contains(concat(' ', normalize-space(@class), ' '), ' listing-table ')]" data=u'<table cellpadding="0" cellspacing="0" b'
我如何访问这些数据?我试过使用命令
access = table.css("data").extract()
也尝试过
access = table.css("tbody tr td").extract()
两者都返回了一个空集。我缺少什么路径或命令来访问表中的 td?
最佳答案
所以你要找的是 <td>
每个表行中的元素 <tr>
.
为了做到这一点,你会
- 需要先选择所有表格行
- 遍历每个表行并找到
<td>
他们每个人的元素。
像这样:
trs = response.css('.listing-table tr')
for tr in trs:
tds = tr.css('td')
for td in tds:
print td.extract()
关于python - 尝试使用 Scrapy 抓取表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42961080/