【发布时间】:2021-09-10 21:19:51
【问题描述】:
我正在尝试将文件目录传递给 Python 脚本以处理内容。这是EXEC 语句,在我的代码下方是错误。它应该打开文件并进行一些处理。
EXEC ScrapeData 'F:\FinancialResearch\SEC\myEdgar\sec-edgar-filings\WIRE\10-Q\0001753926-20-000110\full-submission.txt'
DROP PROCEDURE IF EXISTS ScrapeData;
GO
CREATE PROCEDURE [dbo].[ScrapeData]
(@filepath varchar(300))
AS
BEGIN
EXEC sp_execute_external_script
@language = N'Python',
@script = N'
import html2text
from bs4 import BeautifulSoup
import pyodbc
import re
import requests
import pandas as pd
with open(@filepath) as f:
contents = f.read()
soup = BeautifulSoup(contents, ''lxml'')
.....
错误:
消息 39004,第 16 级,状态 20,第 0 行
执行“sp_execute_external_script”时出现“Python”脚本错误,HRESULT 为 0x80004004。消息 39019,第 16 级,状态 2,第 0 行
发生外部脚本错误:执行错误。检查输出以获取更多信息。
回溯(最近一次通话最后一次):
文件“”,第 3 行,在
文件“E:\ProgramData\REAPER\Temp-PY\Appcontainer1\DE944528-CBDA-4AFD-B50F-32AD2CFD35B7\sqlindb_0.py”,第 45 行
使用 open(@filepath) 作为 f:
^
SyntaxError: 无效语法SqlSatelliteCall 错误:执行错误。检查输出以获取更多信息。
来自外部脚本的 STDOUT 消息:
SqlSatelliteCall 函数失败。有关详细信息,请参阅控制台输出。
【问题讨论】:
标签: python sql-server stored-procedures