PhantomJS - Google Analytics中的错误语言(Accept-Language)

问题描述 投票:0回答:1

我在Ubuntu和Google Analytics上使用PhantomJS / CasperJS进行了一些测试,我遇到了GA问题,无法正确识别我在HTTP请求标头中发送的语言设置。

无论我在Accept-Language标题中输入什么内容,我最终都会将GA语言分类为“c”。

enter image description here

我确定我的Accept-Language标题是正确的,这是一个例子:

ACCEPT-ENCODING:gzip, deflate
CONNECTION:Keep-Alive
ACCEPT-LANGUAGE:en-US
USER-AGENT:Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1
ACCEPT:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

经过长时间的反复试验后,我发现C实际上是Ubuntu内部LANG env变量的默认设置:

LANG=C.UTF-8

实际上,我可以通过使用命令行中的以下命令更改我的ENV变量来影响Google Analytics分类:

export LC_ALL="en_US.UTF-8"

如果我只设置“export LC_LANG”或“LANGUAGE”,它就不起作用。我也不确定为什么。

但我如何从PhantomJS / CasperJS内部控制此设置?我不能/不想为CLI中的每个PhantomJS运行更改我的ENV变量,我一次大量测试多种语言。

有没有人经历过这个并且可以帮忙?

google-analytics http-headers phantomjs casperjs headless-browser
1个回答
0
投票

我设法找到了解决这个问题的黑客解决方案。我只是在CLI中使用以下命令:

$ LC_ALL=en-gb phantomjs script.js

并且将Accept-Language正确传递给Google Analytics。

我认为将CasperJS请求标头正确传递给PhantomJS存在问题。

© www.soinside.com 2019 - 2024. All rights reserved.