Update 2016.10.25:今天发现百度自2016年9月中下旬左右做了调整,通过这种方法可能获取不到关键词了。

一、缘起

大概两个星期前,在一个QQ 群里看到有个童鞋说百度移动端搜索可能做了下调整,原因是他看到GA 中开始出现较多的m.baidu.com / referral 的数据。当时和他讨论了很久,始终没有明白他说的意思。直到有一天,我在自己的GA 账户中也出现了m.baidu.com / referral 时,我终于觉得有必要探索下了。

二、发现

找到GA 账户中出现m.baidu.com / referral的地方,使用细分将其他所有无关的数据隔离,选用次级维度完整引荐来源网址,得到类似如下链接:

m.baidu.com/from=1012704v/bd_page_type=1/ssid=0/uid=0/pu=usm%400%2Csz%401320_2001%2Cta%40iphone_1_9.0_3_601/baiduid=E4ED2757B863D8BCD0606A91D5C59C05/w=0_10_%E6%B5%8B%E8%AF%95/t=iphone/l=1/tc

细心一点会发现,链接中/w那里的值中包含搜索关键词信息,即上述/t前面的encode字符即为搜索关键词"测试"。

因为GA 中完整引荐来源网址(英文下为Full Referrer)是去除了查询参数之后的url,所以还是有必要获取原始的referrer看下的,因为那里边可能还包含其他有用的信息。要获取原始的referrer其实也挺简单,在该账户下新建一个视图,可以配置一个自定义高级过滤器到用户指定这个字段,具体配置如下:

filter_get_full_referrer

获取到原始的referrer之后,在受众群体-自定义-用户指定 那里就可以看到原始的referrer了,原始的referrer结构大致如下:

http://m.baidu.com/from=1012704v/bd_page_type=1/ssid=0/uid=0/pu=usm%400%2Csz%401320_2001%2Cta%40iphone_1_9.0_3_601/baiduid=E4ED2757B863D8BCD0606A91D5C59C05/w=0_10_%E6%B5%8B%E8%AF%95/t=iphone/l=1/tc?ref=www_iphone&lid=11739028573146235038&order=9&fm=altb&tj=Wc_9_0_10_title&sec=6793&di=5c8818b63d11b743&bdenc=1&tch=124.300.164.1475.1.192&nsrc=IlPT2AEptyoA_yixCFOxXnANedT62v3IEhuYNy5K1De8mVjte4viZQRAZHKgVnCFZpLRgTDLoxsYwnHO0XEo8_1qu_-lp75q7Xevtenr6sTSTBQ1fQMs22GHG5Yq63u

从原始referrer中可以观察到有个order字段,其实这个字段就是用户点击的链接在当前页的排序,比如这里表示用户点击的是当前页的第9条。

既然完整的引荐链接url我们已经拿到了,就可以开始做正事儿了——获取搜索关键词和关键词在第几页、排第几条等信息。

三、解决

根据上述引荐链接url,我们明显可以看到搜索关键词信息在/w这个字段的值中,且/w这个字段的值被“_”分割为三部分,如上述链接

/w=0_10_%E6%B5%8B%E8%AF%95

第一个“0”表示的其实是上一页的最后一条表示的是搜索结果中的第几条,如这里我点击的是第一页的第9条,不存在上一页,所以上一页的最后一条只能是0;如果是点击的第二页的某条,第一个数字通常是10;

第二个“10”表示的是每页设置显示多少条,这里是10;(这个系猜测,不过在百度移动端搜索上似乎不能指定每页显示多少条,默认都是10条)

第三个“%E6%B5%8B%E8%AF%95”就是“测试”的encode字符了,因为url中出现中文在实际传输时都会被encode的。

根据上述信息,我们就可以在GA 中配置过滤器来获取m.baidu.com /referral 的搜索关键词和搜索结果所在页以及排名等信息了。强烈建议新建一个视图在使用以下过滤器!

获取搜索关键词

配置自定义高级过滤器,A字段选择引荐,输出字段选择广告系列字词,A字段那里使用的正则表达式为:

^(https?:\/\/)m\.baidu\.com.*\/w=\d{1,}_\d{1,}_([^\/]+)

输出字段直接使用$A2即可

具体配置如下所示:

filter-get-keyword

获取搜索关键词所在页

配置自定义高级过滤器,A字段同样选择引荐,输出字段选择用户指定。A字段这里使用的正则表达式和上述不一样,这里使用的正则式为:

^(https?:\/\/)m\.baidu\.com.*\/w=([^_]+)_([^_]+)

输出字段输入:第($A2/$A3)+1页

配置如下图所示:

filter-get-keyword-page

以上获取到的搜索关键词在流量获取-所有流量-来源/媒介  再选择次级维度关键字即可看到。或者直接使用自定义报告,效果如下所示(关键字已被模糊处理):

keyword-page-report

四、后记

之前一直在想为什么来源链接中会出现如此奇怪结构的url呢,直到最近一次偶然操作才让我发现这些链接来自何处……不过这回就暂不探讨了,留待下次分解咯。

最后,值得一提的是,m.baidu.com / referral 在GA、CNZZ、百度统计等工具中默认均不能被识别为自然搜索。使用上述方法,虽然不能使之变成baidu / organic,但是能够获取到对应的搜索关键词及排名等信息,想必也是有用的。

order那里信息的获取在本文就不罗列了,感兴趣的童鞋可以自己整整。以上有任何疑问或好的建议,欢迎留言评论~~

5 Thoughts on “获取可能遗漏的搜索关键词及其排名信息(上)

  1. Pingback: 在GA中获取百度SEM渠道的搜索词 – Jeff Show – 数据科学笔记

  2. 你好,我是刚接触GA的,我想问下怎么设置自定义高级过滤器?

  3. 请问下,怎么配置自定义高级过滤器?

  4. Pingback: 获取可能遗漏的搜索关键词及其排名信息(下) | Jeff Show – 数据科学笔记

发表评论

电子邮件地址不会被公开。

Post Navigation