Package for Access GA,GAM,MOAT,Qubole,Athena,S3,Rubicon Apis

sroka的Python项目详细描述


sroka套餐

提供对数据的简单python访问的包:

  • 谷歌分析
  • google admanager(gam早期的doubleclick for publishers,dfp)
  • 护城河
  • 曲波乐
  • 鲁比肯
  • 雅典娜
  • 谷歌表格
  • s3

开发人员

安装要求并启用自定义GitHooks:

pip install -r requirements.txt
git config --local core.hooksPath .githooks/

使用flake8检查样式:

flake8 .

安装

pip install git+ssh://git@github.com/Wikia/sroka

配置

在主文件夹中创建~/.sroka_config(隐藏文件夹)文件,您将在其中存储:

  • config.ini基于config.sample.ini的文件,包含访问Qubole、Moat、Athena、S3和Rubicon的信息
  • client_secrets.json用于GA访问
  • ad_manager.json用于GAM访问

或者,您可以在分析期间设置文件的本地化:

fromsroka.config.configimportsetup_env_variablesfromsroka.config.configimportsetup_client_secretfromsroka.config.configimportsetup_admanager_configsetup_env_variables('/file_path/config.ini')setup_client_secret('/file_path/client_secrets.json')setup_admanager_config('/file_path/ad_manager.json')

获取GA,Gam Ang Google Docs JSONs with Secrets

谷歌分析

  1. 使用this wizard 在google developers控制台中创建或选择一个项目并自动打开api。单击“继续”,然后单击“转到凭据”。
  2. 在“向项目添加凭据”页面上,单击“取消”按钮。
  3. 在页面顶部,选择“OAuth同意屏幕”选项卡。选择一个电子邮件地址,如果尚未设置,请输入一个产品名称,然后单击“保存”按钮。
  4. 选择“凭据”选项卡,单击“创建凭据”按钮,然后选择“OAuth客户端ID”。
  5. 选择应用程序类型“其他”,输入所选名称,然后单击“创建”按钮。
  6. 单击“确定”关闭生成的对话框。
  7. 单击客户端ID右侧的文件下载(下载JSON)按钮。

gam

  1. 跟随these instructions
    • 添加服务帐户时,请注意角色需要具有必要的查看和报告权限。

最后应该使用.json(!)具有凭据的文件

  1. 确保“OAuth 2.0客户端ID”中的name与“服务帐户密钥”中的service account匹配:here
  2. 将gam帐户创建为服务帐户而不是新用户:https://support.google.com/admanager/answer/6078734?hl=en
  3. 一旦您有了服务帐户,它就可以用来访问不同网络中的数据。只需通过第二个网络的gam ui将其添加为一个新的服务帐户。
  4. 可以在config.ini文件中指定附加信息:
  • 网络代码-可以在函数调用中覆盖的默认值
  • 应用程序名称-网络的自定义名称,如果未指定,则将传递泛型值。

谷歌驱动器表凭证

转到link并单击蓝色按钮 ENABLE THE GOOGLE SHEETS API创建一个可以访问google工作表的项目。你应该 以credentials.json文件结束,该文件应下载到~/.sroka_config文件夹。

获取Qubole和Athena的访问令牌

曲伯勒

  1. 查找Qubole API令牌(转到“用户”->;“我的配置文件”->;“我的帐户”->;“API令牌”->;“显示”)
  2. 将qubole api标记复制到config.ini文件

雅典娜和S3证书

  1. 您应该在aws控制台的注册过程中获得aws_access_key_id和aws_secret_access_key。
  2. s3bucket_name可以在athena视图的aws控制台中找到,当您单击Settings时,这里有Query result location。 不带s3:///的位置名称是您需要的。
  3. 对于雅典娜的用法,您还需要设置region(aws regional endpoint),例如'us-east-1'

鲁比肯认证

  1. 您应该从rubicon获得您的id、用户名和密码
  2. 将值复制到相关字段中的config.ini文件

常见问题

macos

如果您看到类似ValueError: unknown locale: UTF-8

的错误

请添加到~/.bash_profile这样的行:

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

安装sroka

  1. 如果PyYAML包构建不正确,可能是由于较新版本的pip无法卸载p因为它是由二分法处理的。请先用--ignore-installed标志安装PyYAML包。

  2. 如果numpy在sroka安装过程中出错,可能是由于安装了多个版本。请使用pip uninstall卸载所有内容,然后重新安装最新版本。

学分

所有对sroka开发做出贡献的人,也在使用opensource之前(包括cr和qa):

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在hazelcast中从地图中取出第一把未锁定的钥匙?   将个人记录从一个数据库复制到另一个数据库Oracle和Java   java Spring boot招摇过市404   ArrayList中的数组问题,Java   例外我保存了文本1。txt文件位于与Algo相同的文件夹中。java文件在中。但我得到了一个Filenotfoundexception,我找不到任何原因   雅加达ee如何解决java中“字符串或二进制数据将被截断”的问题?   Java中的swing遍历数组列表   javascript我在Ext js中有一个表,我需要在<td>标记中编写一些逻辑   java Servlet过滤器是否可以检索其url路径?   java GXT如何将网格过滤器参数添加到请求URL(获取参数)?   java无法获取maven安装路径   安卓 java。ServerSocket中的lang.nullpointerexception。接受   java jquery数据表一个数据表中的最大列数   java Spring数据jpa,jpa替换DTO对象的字符串的正向返回列表   java为什么增量后操作符在此代码中无法增量“a”?   Java包装集合   java匹配包含子域的URL   java获取计算机ip时,显示为0.0.0.0   java使用JGit从Git存储库中检出特定版本