Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何使用pymsteams(pythonms团队)发送df变量的结果_Sql Server_Python 3.x_Pyodbc_Microsoft Teams - Fatal编程技术网

Sql server 如何使用pymsteams(pythonms团队)发送df变量的结果

Sql server 如何使用pymsteams(pythonms团队)发送df变量的结果,sql-server,python-3.x,pyodbc,microsoft-teams,Sql Server,Python 3.x,Pyodbc,Microsoft Teams,很明显,PymsTeam的标签根本不存在,所以我真的希望有人能帮我解决这个问题。我试图做的是编写一个python脚本来运行查询并通过MS团队发送结果。我能够通过myTeamsMessage.text(“Hello World”)成功地从python脚本发送文本,但不能发送变量df的结果 我试着在YouTube上查找视频,浏览网页,但似乎只有发送文本的例子。也许有人知道一个解决方法?或者更好,一个实际的解决方案 import pymsteams import pyodbc import panda

很明显,PymsTeam的标签根本不存在,所以我真的希望有人能帮我解决这个问题。我试图做的是编写一个python脚本来运行查询并通过MS团队发送结果。我能够通过myTeamsMessage.text(“Hello World”)成功地从python脚本发送文本,但不能发送变量df的结果

我试着在YouTube上查找视频,浏览网页,但似乎只有发送文本的例子。也许有人知道一个解决方法?或者更好,一个实际的解决方案

import pymsteams
import pyodbc
import pandas as pd
import numpy as np

conn = pyodbc.connect("Driver={ODBC Driver 17 for SQL Server};"
                      "Server=***-***-***.***.***.com;"
                      "Database=IA;"
                      "Trusted_Connection=no;"
                      "UID=***;"
                      "PWD=***")

query = "SELECT * FROM [IP].[dbo].[vFEP]"
df = pd.read_sql(query, conn)

myTeamsMessage = 
pymsteams.connectorcard("https://outlook.office.com/webhook/***")
myTeamsMessage.text("Hello World")
myTeamsMessage.send()


# def sleeve(df):
#    print(df)


# sleeve(df)

# myTeamsMessage = 
# pymsteams.connectorcard("https://outlook.office.com/webhook/***")
# myTeamsMessage.text(sleeve(df))
# myTeamsMessage.send()
这就是我收到的错误

“pymsteams.teamswebhookeException:需要摘要或文本。”


我希望实现的是通过MS团队发送df的结果。同样,我可以通过“”发送文本,但仅限于此。非常感谢您的帮助。谢谢大家!

对于名为
df
的数据帧,
print(df)
将简单地将数据帧转储到控制台。如果要将数据帧的字符串表示形式发送到
str
变量而不是控制台,请使用。

您还可以向团队发送包含HTML格式的文本字符串,以在输出消息中获取格式表

尝试将您的
sleeve
函数更改为使用pandas
to_html()
函数:

def sleeve(df):
    df.to_html()

您的
sleeve
函数使用
print
将数据帧打印到控制台,但不返回
str
。您的函数返回
None
,这就是您试图作为消息发送的内容。听起来你真的很想做一些更像这样的事情。谢谢你的回复,不幸的是,我无法理解如何实现他们所说的。我不太关心被注释掉的内容,因为我只是在试验,我只是把它包括进来,以显示我在尝试什么。我的罪魁祸首是myTeamsMessage.text(“Hello World”),我只能在这个函数中使用文本。我真正想做的是在df变量中发送结果,如下所示。文本(df)类似于打印,但显然不起作用。很抱歉,如果你指给我的实际上是答案,我只是无法理解。我是新来的。
myTeamsMessage.text(df.to_string())
怎么样?这很有效,非常感谢!