筛选出机器人

云眼About 2 min

筛选出机器人

如何在云眼灰度实验中筛选出可能扭曲实验结果的第三方机器人数据。

第三方漫游器可能会抓取网站并触发您只想计入“真实”访问者的事件,从而扭曲实验结果。云眼灰度实验可以通过过滤掉 IAB/ABC 黑名单上的机器人来为您解决此问题。您所要做的就是在将事件发送到 云眼 时包含该事件的用户代理。

📘 注意

机器人筛选不适用于过去的机器人事件,因此最好在开始实验之前对其进行配置。否则,如果在实验进行到一半时启用筛选,则可能必须从实验开始就放弃(或导出并手动筛选)任何受机器人污染的事件数据。

启用机器人筛选

导航到 云眼 功能实验应用中open in new window>高级>机器人筛选设置,以打开或关闭机器人筛选。有关更多信息,请参阅我们的文章 云眼中的机器人和蜘蛛过滤open in new window.

客户端 JavaScript 事件

无需额外的 JavaScript 代码即可为从浏览器发送的事件启用机器人筛选。通过调用 JavaScript SDK 的跟踪事件方法跟踪事件时,SDK 会自动在出站请求中包含用户的用户代理。如果为项目启用了机器人筛选,云眼灰度实验将自动应用机器人筛选。

所有其他事件

当您使用 SDK 从 Web 浏览器以外的其他位置跟踪事件时,必须将用户代理传递给用户上下文,以便可以使用事件对其进行筛选。应该在基于用户的方法中使用保留属性传递它。如果为项目启用了机器人筛选,并且以这种方式传递用户代理,则云眼灰度实验将应用机器人筛选。 $opt_user_agent

🚧 重要

首先在 云眼 中启用机器人筛选,在实现属性之前,导航到 云眼 应用程序中open in new window的“设置”>**“**高级”以打开或关闭机器人筛选。$opt_user_agent

下面的示例演示如何传递属性。$opt_user_agent

Swift

// Get the user agent and pass it to the Eyeofcloud  user context 
// as the attribute $opt_user_agent

let user_agent = "this_could_be_a_bot"

let attributes = ["device"          : "iphone",
                  "location"        : "Chicago",
                  "$opt_user_agent" : "this_could_be_a_bot"]

user = eyeofcloud.createUserContext(userId: "test-user-id", attributes: attributes)

// now any user-based call filters out the bot
let decision = user.decide(key: "flag_1")
try? user.trackEvent(eventKey: "my_purchase_event_key")

Last update:
Contributors: “zhangweixue”