我可以在python中动态地创建dict的键吗?

我正在Scrapy中创建一个蜘蛛。我想用这种方式来刮表。

  • 把每一个 <tr>
  • 使用 <th> 作为关键 <td> 作为内容

我想出的代码是这样的。

def parse(self, response):
        item = {}
        item['code'] = response.xpath('//meta[@itemprop="sku"]/@content').extract_first()
        tables = response.css('.technical-specs')
        for table in tables:
            specs = tables.xpath('tbody/tr')
            for s in specs:
                key = s.xpath('th/text()').extract_first().replace(" ", "_").replace("(", "_").replace(")", "_").replace("/", "").lower()
                value = s.xpath('td/text()').extract_first()
                item[key] = value


        return item

但是没有用。这是否可以实现?

解决方案:

你需要创建一个dict实例,然后在循环里面添加项目。比如说,你需要创建一个 dict 实例,然后在循环中添加项目。


my_dict = dict() # Can be {} to

for item in items:
  key = item.key
  value = item.value
  my_dict[key] = value

Regards

给TA打赏
共{{data.count}}人
人已打赏
未分类

Pyodbc 调用带参数的存储过程。

2022-9-13 13:01:35

未分类

如何为Telegram API发送多格式数据的文件?

2022-9-13 13:01:37

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索