python - 尝试使用 Scrapy 抓取表格

标签 python html css web-scraping scrapy

我正试图在 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> .

为了做到这一点,你会

  1. 需要先选择所有表格行
  2. 遍历每个表行并找到 <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/

相关文章:

html - 在向下滚动时淡化 Bootstrap 导航栏,同时更改文本颜色

python - 将数据从主机加载到 docker hive 容器

java - Android RSA加密和Python解密

python - 如何检查字典值是否包含单词/字符串?

javascript - 为什么 IDBKeyRange.only() 不允许 bool 值?

javascript - 如何在 JavaScript 中使用单个函数进行多个输入

python - 由于objects.get 查询中的类型转换值而导致 Django 内部服务器错误

php - 如何使用谷歌地图生成网络服务结果

javascript - 如何将图标/按钮移到文本框 x-webkit-speech 之外?

javascript - 根据窗口大小调整页面元素的大小