首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SharePlum -共享点列表-删除记录

SharePlum -共享点列表-删除记录
EN

Stack Overflow用户
提问于 2020-01-27 01:07:17
回答 1查看 285关注 0票数 1

全,

我已经编写了一个python脚本来使用python-shareplum包从sharepoint列表中删除基于某些条件的行(请注意,我并不是要删除所有行)。

我的代码片段如下:

代码语言:javascript
运行
复制
Begin_Date= pd.datetime(date.today().year, date.today().month, 1)
new_list = site.List('IRC Reporting (Tableau) - IRC PNL History Data')
fields = ['IRC Approval Date','Demand Region','Product Category']
query = {'Where': [('Eq', 'IRC Approval Date', Begin_Date)]}
dt =  [row['IRC Approval Date'] for row in new_list.GetListItems(fields=fields,query=query)]
new_list.UpdateListItems(dt, 'Delete')
print(dev_ids)

脚本运行正常,但记录未从列表中删除。

欢迎您的参与!

EN

回答 1

Stack Overflow用户

发布于 2021-05-10 17:36:33

您可以通过将列表项ID传递给Shareplum中的UpdateListItems来删除列表项。如果您的列表小于或等于5000,则以下代码有效。

代码语言:javascript
运行
复制
from shareplum import Office365,Site
from shareplum.site import Version
Begin_Date= pd.datetime(date.today().year, date.today().month, 1)    
authcookie = Office365(server_url, username = Username, 
password=Password).GetCookies()
site = Site(site_url, version=Version.v365, authcookie=authcookie)
sp_list = site.List('IRC Reporting (Tableau) - IRC PNL History Data')
fields=['ID']
query = {'Where': [('Eq', 'IRC Approval Date', Begin_Date)]}
sp_data =sp_list.GetListItems(fields=fields,query=query)
del_df=pd.DataFrame.from_dict(sp_data)
list_data = del_df['ID'].tolist()
sp_list.UpdateListItems(data=list_data,kind='Delete')
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59920697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档