如何在Scrapy中迭代div?

2024-04-16

这可能是一个非常微不足道的问题,但我是 Scrapy 的新手。我试图找到问题的解决方案,但我只是看不出这段代码有什么问题。

我的目标是废弃给定网站上的所有歌剧节目。每个节目的数据都位于一个具有“row-fluid row-performance”类的 div 中。我试图迭代它们以检索它,但它不起作用。它为我提供了每次迭代中第一个 div 的内容(我得到了 19 倍相同的节目,而不是不同的项目)。

import scrapy
from ..items import ShowItem

class OperaSpider(scrapy.Spider):
    name = "opera"
    allowed_domains = ["http://www.opera.krakow.pl"]
    start_urls = [
        "http://www.opera.krakow.pl/pl/repertuar/na-afiszu/listopad"

    ]


    def parse(self, response):
        divs = response.xpath('//div[@class="row-fluid row-performance    "]')
        for div in divs:
            item= ShowItem()
            item['title'] = div.xpath('//h2[@class="item-title"]/a/text()').extract()
            item['time'] = div.xpath('//div[@class="item-time vertical-center"]/div[@class="vcentered"]/text()').extract()
            item['date'] = div.xpath('//div[@class="item-date vertical-center"]/div[@class="vcentered"]/text()').extract()
            yield item

尝试更改 for 循环内的 xpaths.//。也就是说,只需在双反斜杠前面加一个点即可。您也可以尝试使用extract_first()代替extract()看看这是否会给你带来更好的结果。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Scrapy中迭代div? 的相关文章

随机推荐

  • 在界面中强制执行“等于”

    我有一个接口 我希望实现该接口的每个人都实现一个重写的 等于 方法 有没有办法确保这种情况发生 我猜想发生这种情况的方式是 实现我的接口的类将自动从 Object 获取 equals 从而使接口满意 不 你只能创建一个抽象类 而不是像这样的
  • 使用服务器端脚本 (PHP) 创建 SVG 图形

    有没有办法使用 PHP 脚本生成 HTML 文件 该脚本嵌入了 SVG 其中 SVG 本身是由 PHP 脚本动态生成的 基本上 我想向客户端显示动态生成的 SVG 图像 但是 也仅引用外部源 而 PHP 仅生成当前 HTML 页面 而不是外
  • Rails:语法错误,意外的keyword_ensure,期望$end

    我正在创建一个非常基本的 Rails 应用程序 学习教程 但无法理解为什么会出现此错误 我已尝试排除故障但无济于事 My code ul class nav pull right li li li li li li ul
  • 如何将操作栏与 Xamarin 和 MvvmCross 一起使用

    我看到 Xamarin 最近作为组件发布http components xamarin com view xamandroidsupportv7appcompat http components xamarin com view xaman
  • 如何更新 C# 和 SQL Server 中的值? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这是我的程序 应该更新包含 3 列的表中的分数 id nickname scor Otherform id1 is the id需要更新的
  • Docker for ARM64 (Raspberry Pi 4) 上的 Android SDK 用于构建 APK

    我正在尝试创建一个ARM64 Docker 镜像它能够构建我的 React Native 应用程序的 apk 文件 背景 为了练习目的 我使用 5 个 Raspberry Pi 4 板构建了一个 Kubernetes 集群 一切工作正常 J
  • 按数组类型查询 - MongoDB

    我必须按类型查询我的 mongoDB 集合 假设我有这两个文件hello收藏 id ObjectId 56684ee0f597654b99d0d636 name Scrooge surname McDuck address road Mon
  • 如何在 Python 中发送包含一些非 ASCII 字符的电子邮件?

    我正在使用 Python 3 7 并尝试使用 smtplib 发送电子邮件 只要消息不包含任何土耳其字符 例如 我的脚本就可以完美运行 到目前为止我发现的唯一可行的解 决方案是使用 string string encode ascii ig
  • 设置 UIPopOverController 大小

    我有一个view里面有一堆按钮UIScrollView 当用户按下按钮时 我希望显示一个 UIPopOverController 指向所选按钮 它有点工作 但是弹出窗口的大小错误并且指向视图中的随机点 这是我的代码 void detail
  • 如何将 Maven 存储库 jar 添加到 Eclipse 构建路径?

    从 Eclipse 中 我可以在 Maven 存储库视图中看到所有必需的 jar 但我有大约 100 个缺少 jar 文件的错误 所以我设置了 M2 REPO 环境变量 我已经从命令行运行了 mvn eclipse eclipse 命令 当
  • WINAPI 带有自定义边框的编辑控件

    在纯 WinAPI 无 MFC 中实现编辑控件的自定义圆形边框的正确方法是什么 我需要像这样的边框编辑 我应该子类化编辑控件并在 WM NCPAINT 或类似的东西中进行自定义绘画吗 我想你有两个选择 正如你所说 你可以子类化并覆盖WM N
  • 从 Django 调用 Scrapy Spider

    我有一个项目 在同一工作区中包含 django 和 scrapy 文件夹 my project django project django project settings py app1 app2 manage py scrapy pro
  • 循环日期范围

    在Python3中 我可以像这样循环遍历一系列日期 import datetime dt0 datetime datetime 2017 1 1 0 0 0 dt1 datetime datetime 2017 1 5 0 0 0 dt d
  • Spring @Async 限制线程数

    我的问题与这个非常相似 Async 阻止一个线程继续执行 直到其他线程完成 https stackoverflow com questions 4324212 async prevent a thread to continue until
  • Discord 机器人添加对消息的反应discord.py(无自定义表情符号)

    我一直在尝试使用discord py创建一个机器人 在阅读后使用discord py添加对消息的反应this https stackoverflow com questions 48982061 how do you have a bot
  • xamarin.forms 中的导航如何工作?

    由于我在 android 中的应用程序中使用 xamarin forms 因此我必须从一个页面导航到另一个页面 我的问题是 从一个页面导航到另一页面是否会将其添加到导航堆栈中 例如 如果我的应用程序有导航 例如第1页 gt 第2页 gt 第
  • if (static_cast(x)) 与 if (x)

    我有一位同事经常在条件语句中对 bool 进行显式强制转换 如下所示 SomeType ptr some value if static cast
  • 如何在aspx页面中的javascript中读取web.config中的值

    我在 aspx 文件中有一段 javascript 代码 在我的脚本函数中 我尝试从 web config 读取 SiteRootURL 值 如下所示 var k alert k 这是行不通的 当我添加上面的代码时 我的 aspx 页面顶部
  • .NET 3.5 处置注册表项

    我有以下代码 RegistryKey installKey Registry LocalMachine OpenSubKey installKey 我正在我的代码上运行静态分析工具 它给了我一个缺陷 说我从方法中返回而没有处理安装密钥 我知
  • 如何在Scrapy中迭代div?

    这可能是一个非常微不足道的问题 但我是 Scrapy 的新手 我试图找到问题的解决方案 但我只是看不出这段代码有什么问题 我的目标是废弃给定网站上的所有歌剧节目 每个节目的数据都位于一个具有 row fluid row performanc