调节/速率限制红宝石机械化

2024-02-29

我需要调节 Mechanize 实例与 API 连接的频率(每 2 秒一次,因此限制连接到该或更多)

So this:

instance.pre_connect_hooks << Proc.new { sleep 2 }

我原以为这会起作用,而且确实如此,但现在该类中的每个方法都会休眠 2 秒,就好像机械化实例被触摸并被告知保持 2 秒一样。我将尝试一个后连接挂钩,但显然我需要一些更复杂的东西,但目前我不知道是什么。

代码是更多解释,因此如果您有兴趣,请继续:https://github.com/blueblank/reddit_modbot https://github.com/blueblank/reddit_modbot,否则我的问题涉及如何高效且有效地将 Mechanize 实例限制在 API 指定的特定时间范围内(超出该限制会导致请求丢失和禁止)。另外,我猜我也需要更好地将机械化实例集成到我的类中,对此的任何指示也将受到赞赏。


每次连接时都会调用前连接钩子和后连接钩子,因此如果存在某种重定向,则可能会为一个请求触发多次。尝试history_added,它只被调用一次:

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

调节/速率限制红宝石机械化 的相关文章

  • 为什么 Chrome Devtools 中的 Ruby 文件 (.erb) 无法使用语法高亮显示?

    根据本新闻稿 Chrome 开发者工具可以对多种语言进行语法高亮显示 包括 erb 文件 https plus google com GoogleChromeDevelopers posts MnikfMyJ14X https plus g
  • cron 爬虫使用 Ruby 中的 Google API 将数据插入 Google 电子表格的授权问题

    我的项目是每天早上 9 00 抓取某些网络数据并将它们放入我的 Google 电子表格中 并且它必须获得读取和写入某些内容的授权 这就是为什么下面的代码位于顶部 Google API CLIENT ID blah blah CLIENT S
  • 如何在 Rails 中制作动态下拉菜单?

    我正在开发一个电子商务项目 其中将有用于选择尺寸的单选按钮 我有一个数量下拉菜单 我想根据用户所选尺寸的可用库存使此下拉列表动态化 谁能告诉我如何在 Rails 上做到这一点 不会用大量的 javascript 扰乱我的视图文件 如果您使用
  • Ruby Regex 舍入尾随零

    我正在寻找一个正则表达式来删除十进制数字中的尾随零 它应该返回以下结果 0 0002300 gt 0 00023 10 002300 gt 10 0023 100 0 gt 100 1000 gt 1000 0 0 gt 0 0 gt 0
  • Ruby 单引号和双引号

    我最近一直在使用 Ruby 进行编码 并且之前使用过 Python 据我所知 单引号和双引号对代码的工作方式没有影响 我转向 Ruby 是为了了解它是如何工作的 并研究 Ruby 和 Python 之间的相似之处 我曾经使用过单引号字符串并
  • 在 Ruby 中生成 GUID

    我有一个问题 用 GUID 很容易解决 特别是 对于密码重置工作流程 我想将 GUID 令牌发送到用户的电子邮件并让他们使用该令牌重置密码 由于 GUID 是唯一的 因此这非常安全 并且可以避免我通过电子邮件向人们发送密码 这是有风险的 我
  • 从架构中删除表 - Rails

    我想删除架构中的一个表 我在第一次启动项目时创建了数据库并希望删除该表 这样做的最佳方法是什么 I tried rails g migration drop table installs但这只会创建一个空迁移 Schema create t
  • 尝试使用 Rails 和 PostgreSQL 生成模型时,命令挂起且没有错误

    使用该命令时 rails generate model Event name string 什么也没发生 我必须按 CTRL c 我使用的版本是 红宝石 2 1 1p76 导轨4 1 0 PostgreSQL 9 3 4 Mac OS X
  • File.delete 上的 Ruby (Errno::EACCES)

    我试图在使用完一些 XML 文件后删除它们 其中一个文件给了我这个错误 delete Permission denied monthly builds xml Errno EACCES Ruby 声称该文件受到写保护 但我在尝试删除它之前设
  • 如何在 Ruby 中将“Access-Control-Allow-Origin”标头添加到 API 响应

    我正在面试前端开发人员的工作 并接受了构建简单前端界面的编码测试 我已经得到了服务器 它是用 Ruby 2 1 3 编写的 有 3 个端点 我将在前端客户端中使用它们 我对 Ruby 没有任何经验 但我按照他们的说明设置服务器 它似乎有效
  • 如何在 .js 中的字符串中插入来自 ruby​​ 示例的变量[重复]

    这个问题在这里已经有答案了 在 ruby 中 您可以将变量插入到字符串中 如下所示 x sake puts I like x I like sake 例如 def what i like word I like word end 在 jav
  • Ruby 未绑定方法:是否可以强制绑定到其他类的实例?

    我想知道我是否可以强迫这种情况发生 class A def bomb bomb end end class B end bomb A instance method bomb b B new bomb bind b 目前它抛出错误 Type
  • 获取块参数个数

    我需要获取给定块所采用的参数数量 例如 foobar 1 2 3 a b c def foobar x y z block need to obtain number of arguments in block which would be
  • SSL_connect 返回=1 errno=0 状态=SSLv3 读取服务器证书 B:证书验证仅在代理时失败

    这篇文章几乎重复了许多其他帖子 包括Rails 4 和 Ruby 2 Net HTTP SSL 请求 OpenSSL SSL SSLError SSL connect returned 1 errno 0 state SSLv2 v3 re
  • 如何使 Rails 3 资源预编译速度更快?

    我有一个正在运行的 Rails 3 2 1 应用程序 我正在通过 Capistrano 进行部署deploy assets它运行deploy assets precompile task 一切工作都很好 除了编译本身非常慢 我没有那么多 C
  • 红宝石边缘情况

    ruby 有一些边缘情况很难解释 因为解析会带来一些有趣的问题 我在这里列出其中两个 如果您知道更多 请添加到列表中 def foo 5 end this one works if tmp foo puts tmp to s end How
  • 从 Ruby 中的 DateTime 变量获取时间

    我在 ruby 中工作 我有一个包含数据库中今天的日期时间的对象 我只想要时间截断数据 我怎样才能得到那个 Try 日期时间 strftime http www ruby doc org stdlib 1 9 3 libdoc date r
  • 可以覆盖/实现的 ruby​​ 运算符列表

    是否有可以覆盖的所有 ruby 运算符的列表 不是那些不能的 Here s Ruby 运算符表 http phrogz net programmingruby language html table 18 4 方法和可重载的有 Elemen
  • 预期的 ProductField,出现数组问题

    我有一个 Rails 4 应用程序 它有一个如下所示的 params 块 def store params params require store permit name description user id products attr
  • Watir 更改 Mozilla Firefox 首选项

    我正在使用 Watir 运行 Ruby 脚本来自动执行一些操作 我正在尝试自动将一些文件保存到某个目录 因此 在我的 Mozilla 设置中 我将默认下载目录设置为桌面并选择自动保存文件 然而 当我开始运行脚本时 这些更改并未反映出来 似乎

随机推荐

  • 页脚位于底部但不粘

    我试图让页脚齐平到页面底部 但不一定是粘性的 只需位于底部 以防用户向下滚动 这 有效 但页脚出现后底部似乎有一些空白 看起来有点尴尬 有谁知道CSS将页脚刷新到底部并保持在最底部而不使其粘着的最佳方法吗 如果您希望我发布我的 html c
  • 如何在 django Rest 框架中将多个变量传递给 modelViewSet?

    我在用http www django rest framework org http www django rest framework org 我有一个场景 我想根据需要从数据库获取数据来传递两个或多个变量 在下面的代码中 只有 pk 存
  • Wicket @SpringBean 不创建可序列化代理

    SpringBean PDLocalizerLogic loc 当使用上面时 我收到 java io NotSerializedException 这是因为 loc 不可序列化 但这不应该成为问题 因为 spring bean 是可序列化的
  • 将切片扩展到其容量的最简单方法是什么?

    我有一个程序 它使用缓冲池来减少代码中一些性能敏感部分的分配 像这样的事情 播放链接 https play golang org p c gsqBcbE some file or any data source var r io Reade
  • Internet Explorer 无法识别 SVG 元素的 CSS

    我有一个 SVG 图像地图 链接上带有悬停样式 有关 SVG 图像映射的更多信息here http thenewcode com 760 Create A Responsive Imagemap With SVG 我测试过的所有受人尊敬的浏
  • ChartJS 仅显示特定刻度的大字体大小

    我试图强调 X 轴上的特定值 如果它满足特定条件 例如 在我的codepen https codepen io nuclearslug pen NJGmmy我只想更改 蓝色 栏的字体大小 这对于 Chart js 来说是可能的吗 var c
  • 将文件添加到销售订单行项目

    I want to add files to salesorder line items in Acumatica using web services What endpoint should be used 我想使用 Web 服务端点添
  • 如何为 Closure 编译器设置 language_in 选项?

    我需要在 Closure 编译器上设置 language in 选项以防止 IE8 解析错误 错误 解析错误 IE8 及更低版本 将错误地解析数组和对象文本中的尾随逗号 如果您的目标是较新版本的 JS 请设置适当的 language in
  • RavenDb - 远程服务器返回错误:(403) Forbidden

    当我尝试在 RavenDb 上创建 database people 集合时 出现以下错误 远程服务器返回错误 403 禁止 我在 IIS 上热了 Raven 但我不确定发生了什么 在 raven Management Studio 上 当我
  • 单击按钮时手动触发 HTML 验证

    我正在尝试处理按钮单击时的表单验证 它正在验证表单但未显示错误 有人可以帮我吗
  • 如何在 React 上正确地将 onclick 处理程序绑定到 `this`

    解释为什么这不是重复的 我的代码已经可以工作 我已将其作为评论包含在内 问题是为什么this当我将其包含到单击处理程序函数时 上下文会发生变化 我正在尝试 React 中的计算器项目 目标是将 onclick 处理程序附加到数字按钮 以便数
  • Excel VBA将字符串的特定文本粗体设置到单元格中?

    我想将字符串中的一些文本设置为粗体 我该怎么做 通过使用角色 Range A1 Characters 8 5 Font Bold True
  • 以斜线为背景的形状

    可以画一个Shape http msdn microsoft com en us library system windows shapes v VS 95 aspx其背景是由斜线构成的 一个例子Rectangle 抱歉图像质量 如果我想要
  • Android 用动画连续移动背景

    我想做的是水平移动背景并让它无限重复 我尝试使用ImageSwitcher用动画来实现这种效果 但无法使其正常工作 这是我到目前为止的代码L public class MainActivity extends AppCompatActivi
  • 值连接不是 org.apache.spark.rdd.RDD 的成员

    我收到此错误 value join is not a member of org apache spark rdd RDD Long Int Long String Array 0 forSome type 0 lt String Doub
  • 使用不同的锚点重新加载页面

    刚刚被一个问题困住了 我有一个带有 Jquery UI 选项卡的页面 通过向链接添加哈希标签 可以从不同的页面访问每个选项卡 并使用我需要的选项卡加载页面 但是 我还需要访问同一页面中的不同选项卡 我想出的是添加目标 parent 到带有哈
  • 使用 Mclust 进行聚类会产生空聚类

    我正在尝试使用 Mclust 对我的经验数据进行聚类 使用以下非常简单的代码时 library reshape2 library mclust data lt read csv file choose header TRUE check n
  • 将 Meraki SDK 导入 python Azure 函数应用程序时出现 HTTP 500 错误

    当我导入 Meraki 时 from meraki meraki import Meraki它会导致 HTTP 500 错误 这在我的本地计算机上按预期工作 但是当上传到我的 Python Azure Function 应用程序时 它会导致
  • 根据选择值过滤表行

    我需要根据选择值过滤表行 当选择的值为 空 时 表必须隐藏 如果选择值是 1 则表必须可见 并且必须仅显示第一个表列包含值 1 的行 问题是这个 id 列包含多个 id 例如 1 2 由于我的 JQuery 技能不是最好的 我需要你们帮助我
  • 调节/速率限制红宝石机械化

    我需要调节 Mechanize 实例与 API 连接的频率 每 2 秒一次 因此限制连接到该或更多 So this instance pre connect hooks lt lt Proc new sleep 2 我原以为这会起作用 而且