繁体   English   中英

在电源查询中使用简短的 Python 脚本从受密码保护的站点(-> Power BI)中抓取数据

[英]Use short Python script in power query to scrape data from password protected site (-> Power BI)

我对 Python 完全陌生,所以请对任何“令人尴尬的代码或问题”表示歉意。 实际上我正在使用 R 但我无法构建为我完成以下工作的代码。 我为此任务切换到 Python,因为以下代码已经存在。

问题:我想从受密码保护的网站上抓取数据,并将该数据读入 Power BI。

import requests
import json
import argparse
from typing import List
from pandas.io.json import json_normalize
import pandas as pd

def login(mail: str, password: str) -> (int):
    login = requests.post(
        "https://kickbase.sky.de/api/v1/user/login", params={
            "email": mail,
            "password": password
        })
    if login.status_code == 200:
        return json.loads(login.text)["user"]["accessToken"]

    raise LoginError(mail, login.status_code)

auth_token = login("testuserscrape@web.de", "testuserscrape")

request = requests.get(
        f"https://api.kickbase.com/leagues/1420282/lineupex", headers={"Authorization": f"Bearer {auth_token}"})

players_json = json.loads(request.text)["players"]

df = pd.DataFrame.from_dict(players_json, orient='columns')

我对df感兴趣。

当我在 Jupiter Notebook 中运行此代码时,我得到了我想要的:

输出

但是,当我将此代码简单地放入 PowerBI -> 获取数据 -> Python 脚本时,我收到以下错误:

在此处输入图像描述

有谁知道如何解决此问题并将我的数据导入 Power BI 查询?

最好的!

我想你还没有安装 pandas 和其他库。 尝试下面的代码来安装熊猫和其他要求。

Python2.x

pip install pandas typing requests matplotlib

Python3.x

pip3 install pandas typing requests matplotlib

我会在选项下的设置中检查 python 路径。

在此处输入图像描述

然后确保安装库来运行脚本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM