Планирование блокнотов Jupyter с помощью AzurePython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Планирование блокнотов Jupyter с помощью Azure

Сообщение Anonymous »

У меня есть ноутбук, который читает файлы CSV из SharePoint и загружает их в Snowflake. Код отлично работает в моей локальной системе. Я хочу запланировать ежедневную работу этого ноутбука в облаке. Я изучил функции Azure, создал функцию в студии vscode, а также попробовал использовать студию машинного обучения Azure. Это лучшее и экономически эффективное решение для этого. Вот код, который я хочу запланировать.
from office365.runtime.auth.authentication_context import AuthenticationContext
from office365.sharepoint.client_context import ClientContext
from office365.sharepoint.files.file import File
from office365.sharepoint.files.creation_information import FileCreationInformation
# Import necessary modules
import pandas as pd
from io import StringIO
from io import BytesIO
import io
import snowflake
import sqlalchemy
import snowflake.connector
from snowflake.sqlalchemy import URL
from sqlalchemy import create_engine,text
from sqlalchemy.types import String

from office365.runtime.auth.authentication_context import AuthenticationContext
from office365.sharepoint.client_context import ClientContext
from office365.sharepoint.files.file import File
from office365.sharepoint.files.creation_information import FileCreationInformation
# Import necessary modules
import pandas as pd
from io import StringIO
from io import BytesIO
import io
import snowflake
import sqlalchemy
import snowflake.connector
from snowflake.sqlalchemy import URL
from sqlalchemy import create_engine,text
from sqlalchemy.types import String

ctx2 = connect_to_sharepoint(username, password, site_address)

global print_folder_contents
def print_folder_contents(ctx, folder_url):
try:

folder = ctx.web.get_folder_by_server_relative_url(folder_url)
fold_names = []
sub_folders = folder.files #Replace files with folders for getting list of folders
ctx.load(sub_folders)
ctx.execute_query()

for s_folder in sub_folders:

fold_names.append(s_folder.properties["Name"])

return fold_names

except Exception as e:
print('Problem printing out library contents: ', e)

# Function to read a CSV file from SharePoint
def read_csv_from_sharepoint(ctx, file_url):
try:
file = ctx.web.get_file_by_server_relative_url(file_url)
with BytesIO() as file_stream:
file.download(file_stream)
ctx.execute_query()
file_stream.seek(0)
return pd.read_csv(file_stream, dtype=object) # Ensure all columns are read as objects (strings)
except Exception as e:
print(f"Failed to read the file at {file_url}. Error: {e}")
return None

engine = create_engine(
URL(
user,
account,
authenticator='externalbrowser',
database,
schema,
warehouse,
),
connect_args={'connect_timeout': 120 }
)

try:
connection = engine.connect()
with engine.connect() as conn:
results = conn.execute(text('select current_version()')).fetchone()
print(results[0])
df.columns = map(str.upper, df.columns)
# Convert DataFrame columns to VARCHAR
df = df.astype(str)
df.to_sql('scheduler_test'.lower(), con=connection, schema=schema, index=False, if_exists='replace', chunksize=16000)

finally:
connection.close()
engine.dispose()



Подробнее здесь: https://stackoverflow.com/questions/789 ... sing-azure
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Планирование блокнотов Jupyter с помощью Azure
    Anonymous » » в форуме Python
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Выполнение блокнотов Jupyter становится серым в коде Visual Studio
    Anonymous » » в форуме Python
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Как настроить VS Code для скрытия или удаления выходных данных ячеек из блокнотов Jupyter
    Anonymous » » в форуме Python
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Выполнение блокнотов Jupyter становится серым в коде Visual Studio
    Anonymous » » в форуме Python
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Невозможно автоматически импортировать библиотеки в файлы блокнотов Python и Jupyter.
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»