scrapy单个蜘蛛将多个项目类传递到管道

2024-01-22

我是 scrapy 新手。在 items.py 中,我声明了 2 个 ItemClass,分别称为 ItemClass1 和 ItemClass2。蜘蛛方法 parseUrl 获取 html 并抓取数据并将其放入相应项目类的列表中。

e.g:
C1Items = []
C1Item = ItemClass1()
#scrape data
C1Items.append(C1Item)
...
C2Items = []
C2Item = ItemClass2()
#scrape data
C2Items.append(C2Item)
...

最后:C1Items 和 C2Items 包含所需的数据。

return C1Items #will pass ItemClass1 data to pipeline
return C2Items #will pass ItemClass2 data to pipeline

您能否告知将 C1 项目、C2 项目传递到管道的最佳方法是什么?


将不同类别的所有项目组合到一个列表中并返回该列表,或者使用yield陈述:

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

scrapy单个蜘蛛将多个项目类传递到管道 的相关文章

  • Scrapy CrawlSpider 无法抓取第一个登陆页面

    我是 Scrapy 的新手 正在进行抓取练习 并且正在使用 CrawlSpider 尽管 Scrapy 框架运行良好并且它遵循相关链接 但我似乎无法使 CrawlSpider 抓取第一个链接 主页 登陆页面 相反 它直接抓取由规则确定的链接
  • Scrapy蜘蛛抓取页面和抓取项目之间的区别

    我正在编写一个 Scrapy CrawlSpider 它读取第一页上的 AD 列表 获取一些信息 例如列表和 AD url 的缩略图 然后向每个 AD url 发出请求以获取其详细信息 它在测试环境中工作和分页显然很好 但今天试图进行完整的
  • 好斗的。开始爬行后如何更改蜘蛛设置?

    我无法更改解析方法中的蜘蛛设置 但这绝对是一个办法 例如 class SomeSpider BaseSpider name mySpider allowed domains example com start urls http examp
  • 抓取多个帐户,即多次登录

    我可以成功抓取单个帐户的数据 我想在一个网站上抓取多个帐户 这意味着多次登录 如何管理登录 注销 您可以在每个帐户会话中使用多个 cookiejar 并行抓取多个帐户 请参阅 cookiejar 请求元密钥http doc scrapy o
  • 设置restrict_xpaths设置后出现UnicodeEncodeError

    我是 python 和 scrapy 的新手 将restrict xpaths 设置设置为 table class lista 后 我收到了以下回溯 奇怪的是 通过使用其他 xpath 规则 爬虫可以正常工作 Traceback most
  • 在 scrapy 中将基本 url 与结果 href 结合起来

    下面是我的蜘蛛代码 class Blurb2Spider BaseSpider name blurb2 allowed domains www domain com def start requests self yield self ma
  • 如何使用scrapy抓取xml url

    你好 我正在使用 scrapy 来抓取 xml url 假设下面是我的 Spider py 代码 class TestSpider BaseSpider name test allowed domains www example com s
  • Python:Scrapy返回元素后面的所有html,而不仅仅是元素的html

    我遇到了 Scrapy 行为异常的问题 几个月前我编写了一个简单的函数 它返回给定 xpath 处的项目列表 def get html response path sel Selector text response page source
  • 如何使用XPath选择非空段落?

    我想要抓取的网页具有类似的结构 每个都有一个段落是一个问题 一个段落是一个答案 我想抓取每个问题和答案并将它们存储在两个项目中 问题是 在某些页面上 问题和答案分别是 xxx p 1 and xxx p 2 但在其他页面上 xxx p 1
  • 即使收到 200 状态代码也重试 Scrapy 请求

    我正在抓取一个网站 有时会返回 200 但在 response body 中没有任何文本 当我尝试使用 Selector 解析它时会引发 AttributeError 是否有一种简单的方法来检查以确保正文包含文本 如果没有 则重试请求 直到
  • 如何添加剧作家的等待时间

    我正在将 scrapy 与 playwright 集成 但发现自己在单击后添加计时器时遇到困难 因此 当我点击后截取页面的屏幕截图时 它仍然挂在登录页面上 如何集成计时器以便页面等待几秒钟直到页面加载 选择器 onetrust close
  • 避免由于相对 URL 导致的错误请求

    我正在尝试使用Scrapy抓取一个网站 并且我想要抓取的每个页面的url都是使用这种相对路径编写的 a href en item to scrap html Link a 现在 在我的浏览器中 这些链接可以工作 您可以访问类似的网址http
  • 如何从当前项目向 scrapyd 添加新服务

    我试图同时运行多个蜘蛛 并在 scrapy 中制作了自己的自定义命令 现在我尝试通过 srapyd 运行该命令 我尝试将其作为新服务添加到我的 scrapd conf 中 但它抛出一个错误 指出没有这样的模块 Failed to load
  • 打印 scrapy 请求的“响应”

    我正在尝试学习 scrapy 在遵循教程的同时 我正在尝试进行细微的调整 我想简单地从请求中获取响应内容 然后我会将响应传递到教程代码中 但我无法发出请求并获取响应内容 建议就好 from scrapy http import Respon
  • scrapyd-client 命令未找到

    我刚刚在 virtualenv 中安装了 scrapyd client 1 1 0 并成功运行命令 scrapyd deploy 但是当我运行 scrapyd client 时 终端显示 命令未找到 scrapyd client 根据自述文
  • 使用 Selenium 在选项卡之间切换并对个人执行操作

    我正在尝试提取 URL 将其打开到新选项卡中 然后执行一些操作 我的代码是 urls self driver find elements by xpath div id maincontent table tbody tr td a hre
  • Scrapy 在抓取一长串 url 时陷入困境

    我正在抓取一个大的 url 列表 1000 左右 并且在设定的时间后 爬虫程序会以 0 页 分钟的速度爬行 爬行时问题总是出现在同一个位置 url 列表是从 MySQL 数据库检索的 我对 python 和 scrapy 相当陌生 所以我不
  • Scrapy - 如何抓取网站并将数据存储在 Microsoft SQL Server 数据库中?

    我正在尝试从我们公司创建的网站中提取内容 我在 MSSQL Server 中为 Scrapy 数据创建了一个表 我还设置了 Scrapy 并配置了 Python 来抓取和提取网页数据 我的问题是 如何将Scrapy爬取的数据导出到我本地的M
  • 运行多个 scrapy 蜘蛛的正确方法

    我只是尝试使用在同一进程中运行多个蜘蛛新的 scrapy 文档 http doc scrapy org en 1 0 topics practices html但我得到 AttributeError CrawlerProcess objec
  • 通过 Scrapy 抓取 Google Analytics

    我一直在尝试使用 Scrapy 从 Google Analytics 获取一些数据 尽管我是一个完全的 Python 新手 但我已经取得了一些进展 我现在可以通过 Scrapy 登录 Google Analytics 但我需要发出 AJAX

随机推荐

  • 查找两个蓝牙设备之间的方向(定位)

    我有一个应用程序 可以扫描另一部手机正在广播的特定 UUID 并测量它们之间的信号强度 并告诉您离它们是否越来越近或越来越远 我想添加一个方向箭头 我知道如果你有 3 个点 你可以使用三角测量 但我想用 2 个点得到一些稍微准确的东西 有什
  • 对模拟对象的期望似乎没有得到满足(最小起订量)

    我在 Moq 中遇到了一些奇怪的行为 尽管我设置了一个模拟对象以某种方式行事 然后在我正在测试的对象中以完全相同的方式调用该方法 但它的反应就像该方法是从来没有打电话过 我正在尝试测试以下控制器操作 public ActionResult
  • 作为 jar 运行时出现 FileNotFoundException

    FileInputStream fstream new FileInputStream abc txt 作为 jar 运行时抛出 FileNotFoundException 为什么 通常它可以在从 main 方法运行时找到 class My
  • 如何仅删除第一页的页眉页脚 - mpdf

    下面 Mpdf 中的两个函数在所有页面中添加页眉和页脚 设置HTML标题 设置HTML页脚 但是 有人可以帮我从 pdf 第一页中删除页眉和页脚吗 mPDF 有一个名为 show this page 的选项 将其设置为0我想 不会在第一页上
  • Intellij Idea 无法启动 Windows 10

    我下载了 Intellij Idea 并使用了一段时间 效果很好 我不知道它工作期间和开始不工作期间发生了什么 当我单击快捷方式时 我的鼠标会给我加载轮 然后什么也不会发生 在任务管理器中 有一个名为 IntelliJ Idea 的任务正在
  • 发出 GET 请求时的 WhiteLabel 错误页面[重复]

    这个问题在这里已经有答案了 我收到状态为 404 的 WhiteLabel 错误页面 而不是字符串 所有电影 我正在 http localhost 8080 api v1 movies 上发出 GET 请求 我的控制器 package pl
  • 如果应用程序已经启动一次,如何阻止用户第二次进入登录屏幕?

    我正在制作一个具有登录屏幕的应用程序 登录的验证和其他内容由网络服务处理 我的问题是 如果用户安装了该应用程序 那么如果用户第一次运行该应用程序 则会出现一个登录屏幕 通过用户在从市场下载时提供的详细信息进行登录 如果用户成功登录 则第二次
  • AngularJS:在 ng-repeat 生成的范围中设置变量

    如何访问 ng repeat 生成的范围集 我想这的核心是这样一个事实 我不太明白 a 我传递到 ng repeat 指令的对象集合和 b 它生成的范围集合之间的关系是如何工作的 我可以使用 a ng repeat 作用域会监视并拾取该作用
  • 使用自定义文件格式注册ForDraggedTypes

    开发人员文档没有提供 registerForDraggedTypes 方法的完整描述 例如 我希望我的应用程序仅允许访问 abc 文件 我怎样才能做到这一点 如果您希望将文件拖到您的视图中 您应该注册NSFilenamesPboardTyp
  • 不同列的条件平均值

    我有一个像这样的 R 数据框 city2001 lt c a b a grade2001 lt c 5 5 7 city2002 lt c b b a grade2002 lt c 8 9 10 df lt data frame city2
  • 根据条件删除列表中的元素

    我有一个名为 Info 的类 其中 Info 有一个字符串类型实例变量 可以通过以下方式访问 Info getName 我还有一个实例信息列表 例如class list Info Aleck Info John Given a name l
  • 无法将类型“System.Web.Mvc.RedirectToRouteResult”隐式转换为“System.Web.Mvc.JsonResult”

    我如何将操作从 JsonResult 重定向到 ActionResult 但出现错误 我的错误是 无法将类型 System Web Mvc RedirectToRouteResult 隐式转换为 System Web Mvc JsonRes
  • pthread 与 python VM 的回调

    假设我有一个 python 脚本 它通过 ctypes 加载共享库 SL SL 设置了一个pthread T1 python 脚本通过 SL 配置回调 即 python 脚本通过引用 python 可调用项从 SL 调用函数 替代文本 ht
  • 如何通过互联网使用 MQTT?

    目前 我正在成功运行一个 mosquitto 代理 订阅主题并与本地网络中的客户端发布消息 如何与位于不同 IP 地址的另一个本地网络进行通信 我应该设置 2 个 mosquitto 经纪人 每个本地网络一个吗 其他本地网络中的 PC 需要
  • 以编程方式为本地存储库创建 NuGet 包

    我正在编写一个控制台应用程序来创建 NuGet 包 使用 Nuget Core 库 该包将托管在我们的内部服务器上以部署到我们的应用程序中 当我们使用 NuGet Package Explorer 手动创建包时 这一切都可以正常工作 但我们
  • XAML 解析器如何识别 NameScope?

    在 XAML 解析的上下文中 我想知道解析器如何知道类型何时定义 NameScope 它是否完全依赖于 INameScope 接口 检查instance is INameScope 它是否依赖于布尔属性 XamlType IsNameSco
  • 复合主键+外键

    我有一个包含调查列表的表 PK 是 ID CREATE TABLE dbo SurveyMaster ID nvarchar 4 NOT NULL Title nvarchar 200 NULL IsActive bit NOT NULL
  • iBeacons:如何获取广播信标功率(txPower)

    iBeacons 似乎广播其 txPower 参数 报告 1 米距离处的 RSSI 功率 该参数用于计算beacon accuracy and beacon proximity属性 有关 iBeacon 广告包的详细信息 请参见here h
  • 如何防止 ion-checkbox 选择相同的项目值?

    这是一个手风琴列表菜单 在菜单的第三层 我为每个项目放置了一个复选框 此代码已经从所选项目中获取了值 但问题是当我取消选择时 它会让我获取其值 如何防止复选框选择相同的项目并在选择后取消 表单 html
  • scrapy单个蜘蛛将多个项目类传递到管道

    我是 scrapy 新手 在 items py 中 我声明了 2 个 ItemClass 分别称为 ItemClass1 和 ItemClass2 蜘蛛方法 parseUrl 获取 html 并抓取数据并将其放入相应项目类的列表中 e g