草庐IT

dynamic - 为永恒而爬行

coder 2024-02-27 原文

我最近一直在构建一个处理重复事件的新网络应用程序。这些事件可以每天、每周或每月重复发生。

这一切都很好。但是当我开始创建事件浏览器页面(公共(public)互联网可见)时,我想到了一个想法。

如果爬虫访问此页面,并使用下一个和上一个按钮浏览日期,它会一直持续下去吗?所以我选择不使用通用 HTML 链接并使用 AJAX。这意味着机器人将无法跟踪链接。

但这种方法意味着我将失去对没有 Javascript 的用户的任何功能。还是没有 Javascript 的用户数量太少而不必担心?

有没有更好的方法来处理这个问题?

我也对像 Google 爬虫这样的机器人如何检测这些黑洞以及它如何处理这些黑洞非常感兴趣?

最佳答案

nofollow 标记添加到页面,或添加到您不想抓取的各个链接。这可以在 robots.txt 或页面源代码中。查看Robots Exclusion Standard

您可能仍然需要考虑如何抵御不遵守标准的行为不端的机器人。

关于dynamic - 为永恒而爬行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13327366/

有关dynamic - 为永恒而爬行的更多相关文章

  1. ruby-on-rails - rails 3/ActiveRecord : How to switch/change table name during request dynamically? - 2

    我想在请求期间动态更改ActiveRecord模型类的表名。例如,有许多具有相似结构(列)的表:mydb:sample_data_12222sample_data_12223sample_data_12224sample_data_12225...所以,我想做的是..._1。定义基本模型类,如:classSampleData_2。在请求期间更改目标表,例如:defaction_methodSampleData.set_table_name"sample_data_#{params[:id]}"@rows=SampleData.all如果在非线程环境(如Passenger/mod_rai

  2. ruby-on-rails - 仅当该表尚未加入时才可以加入 "dynamically"表吗? - 2

    我正在使用RubyonRails3.2.2,我想知道在范围方法中是否可以“动态”连接一个表,前提是该表尚未连接。那它,我有:defself.scope_method_name(user)joins(:joining_association_name).where("joining_table_name.user_id=?",user.id)end我想做如下的东西:#Note:thefollowingcodeisjustasampleinordertounderstandwhatImean.defself.scope_method_name(user)iftable_is_joined?

  3. ruby-on-rails - rails : dynamic columns/attributes on models? - 2

    我有一个SaaS应用程序,帐户想要在用户模型上保存不同类型的信息。因此,例如,一个帐户可能想要保存年龄和生日,但在另一个帐户中,他们不会使用这些列,而是想要保存头发颜色和高度的信息。这些只是示例,但我将如何构建我的模型和数据库,以便它可以很好地处理“自定义的、动态的”列,而不会创建太多空属性。 最佳答案 这里有两个选项。1.NoSQL数据库。2.Rails4Store功能。 关于ruby-on-rails-rails:dynamiccolumns/attributesonmodels?,

  4. ruby-on-rails - Rails Brakeman 警告 : Dynamic Render Path false alarm? - 2

    我刚刚开始使用Rails,所以我使用Brakeman了解我的新手代码中的潜在漏洞。它在我的show.js.erb文件中抛出关于以下代码的高置信度“动态渲染路径”警告:$('#media-fragment').html('');我实际上预料到这是一个问题,所以不足为奇。所以我将其更改为以下内容:#controller:defshowiflegal_partial?@allowed_partial=params[:partial]elseraiseStandardError,"unexpectedpartialrequest:#{params[:partial]}"endendprivat

  5. ruby-on-rails - rails : dynamically define class method based on parent class name within module/concern - 2

    我想根据包含此Mixin的类名在Mixin中动态生成一个类方法。这是我当前的代码:moduleMyModuleextendActiveSupport::Concern#defsome_methods#...#endmoduleClassMethods#HereiswhereI'mstuck...define_method"#{self.name.downcase}_status"do#dosomething...endendendclassMyClass但这给了我以下方法名称:MyClass.mymodule::classmethods_status在方法定义中获取基类名称是可行的(s

  6. ruby-on-rails - 如何设置 "dynamically"变量值? - 2

    我正在使用RubyonRails3.0.9,我正在尝试“动态”设置一些变量值。那就是……...在我的模型文件中我有:attr_accessor:variable1,:variable2,:variable3#The'attributes'argumentcontainsoneormoresymbolswhichnameisequalto#oneormoreofthe'attr_accessor'symbols.defset_variables(*attributes)#HereIshouldsetto'true'all":variable"attributespassedassymbo

  7. ruby - 定义方法 : How to dynamically create methods with arguments - 2

    我想为find_by功能创建一堆方法。我不想一遍又一遍地写同样的东西,所以我想使用元编程。假设我想创建一个按名称查找的方法,接受名称作为参数。我该怎么做?我过去曾使用过define_method,但我没有为该方法采用的任何参数。这是我的(坏的)方法["name","brand"].eachdo|attribute|define_method("self.find_by_#{attribute}")do|attr_|all.eachdo|prod|returnprodifprod.attr_==attr_endendend有什么想法吗?提前致谢。 最佳答案

  8. ruby-on-rails - 如何设置 ActionMailer default_url_options 的 :host dynamically to the request's hostname? - 2

    我正在尝试设置:hostforactionmailer默认url选项。我在所有环境文件中设置了以下内容config.action_mailer.default_url_options={:host=>"localhost"}我想通过提供请求主机使其更具动态性。当我尝试通过设置它时config.action_mailer.default_url_options={:host=>request.domain}或config.action_mailer.default_url_options={:host=>request.env["SERVER_NAME"]}它抛出错误...无法识别“请求

  9. Ruby 元编程 : dynamic instance variable names - 2

    假设我有以下哈希:{:foo=>'bar',:baz=>'qux'}我如何动态设置键和值以成为对象中的实例变量...classExampledefinitialize(hash)...magichappenshere...endend...这样我就可以在模型中得到以下内容...@foo='bar'@baz='qux'? 最佳答案 您要找的方法是instance_variable_set.所以:hash.each{|name,value|instance_variable_set(name,value)}或者,更简单地说,hash.e

  10. javascript - 查询 : Can't remove element dynamically created - 2

    这个问题在这里已经有了答案:Jqueryclickeventnotfiringontheelementcreateddynamicallyusingjquery(3个答案)关闭8年前。我试图删除一个动态附加的元素,但似乎没有读取为该元素附加的类函数。我可以点击+按钮添加新元素,但是点击“-”按钮我不能删除。Name:+$("#plusdfteng").click(function(){$("#dftenglist").append('Name:-');});$(".minusbtn").click(function(){$(this).parent().remove();})http:

随机推荐