Détection d'erreur Python exécutée à partir de Powershell

Chose que tu veux faire

--Détection d'erreur Python exécutée à partir de Powershell

point

Exemple de code

--Code qui appelle la fonction de conversion d'onglets

exeConvertCsvtoTsv.py



from defConvert import CsvToTsv
import sys

#Chemin du fichier cible
path = sys.argv[1]

#Convertir CSV en TSV
CsvToTsv(path)   

--Fonction de conversion de tabulation

convertTav.py


import csv
import sys
def CsvToTsv(path):

    #Tableau pour la lecture
    line = []
    try:
        #Lire ⇒ Le codage du csv à lire est utf-8 donc une erreur se produit ici
        with open(path, "r", newline="", encoding="cp932") as f:       
            #Créer un objet de lecture (séparé par des virgules)
            reader = csv.reader(f, delimiter = ",")
            #Lis
            line = [row for row in reader]

        #l'écriture
        with open(path, "w", newline="", encoding="utf_8") as f:
            #Création d'objets d'écriture (délimités par des tabulations)
            writer = csv.writer(f, delimiter = "\t")
            #Écrivez tout ensemble
            writer.writerows(line)

    #erreur de décodage
    except UnicodeDecodeError as err:
        print(err)
        sys.exit()

    finally:
        #close
        f.close

--Code PowerShell qui exécute des fonctions python

main.ps1


#CSV à lire
$csv = "test.csv"

try{ 
    #Confirmation de fichier
    if((Test-Path $out) -eq $false){
        $ret = "No File"
        Throw $ret
    }

    #Convertir de CSV en TSV
    $ret = $null
    $ret = python exeConvertCsvtoTsv.py $out #$Recevez le résultat de l'exécution côté python avec ret
    if($null -ne $ret){
        Throw $ret
    }
}
catch{
    Write-Host "SQL Execution Error`r`n$ret"
}
finally{
    Write-Host "end"
}

résultat


#erreur de décodage
SQL Execution Error
'cp932' codec can't decode byte 0x85 in position 7: illegal multibyte sequence
end

--Python est pratique car les types d'exception sont préparés pour chaque type d'exception.

Recommended Posts

Détection d'erreur Python exécutée à partir de Powershell
Exécutez le script illustrator à partir de python
Exécutez Aprili depuis Python sur Orange
Exécutez des scripts Python de manière synchrone à partir de C #
Exécutez Ansible à partir de Python à l'aide de l'API
Exécutez le script Python à partir de Cisco Memorandum_EEM
sql à sql
Gestion des erreurs Python
MeCab de Python
Exécuter des scripts Python à partir d'applications C # GUI
Exécutez des fichiers Python à partir de HTML en utilisant Django
Exécutez des scripts Python à partir d'Excel (en utilisant xlwings)
Utilisez Thingsspeak de Python
Exécutez Python à partir d'Excel VBA avec xlwings et un supplément de tutoriel
Exécutez Python avec VBA
Exploitez Filemaker depuis Python
Utiliser fluentd de python
Exécutez prepDE.py avec python3
Accéder à bitcoind depuis python
Changements de Python 3.0 à Python 3.5
Erreur Python non implémentée
Erreur python d'aujourd'hui: tué
Python depuis ou import
Utilisez MySQL depuis Python
Installer Python à partir de la source
Exécuter des commandes depuis Python
Exécutez Blender avec python
Faites fonctionner le neutron de Python!
Liste des erreurs Python (japonais)
Utiliser MySQL depuis Python
Faire fonctionner LXC depuis Python
Manipuler riak depuis python
Forcer Python depuis Fortran
Exécuter la fonction Python à partir de Powershell (comment passer des arguments)
Utilisez BigQuery depuis Python.
Exécutez BigQuery à partir de Lambda
Exécuter la commande depuis Python
Tutoriel Cloud Run (python)
[Python] Lire depuis Stdin
python + sélénium + safari-run iphone safari de mac avec webdriver
[Python] pour une erreur d'instruction
Utilisez mecab-ipadic-neologd de Python
Exécutez iperf avec python
Importer un enregistrement de résolution d'erreur lorsque vous touchez du code Python à partir de VSCode
Comment exécuter un programme Python à partir d'un script shell
Aplatir à l'aide du rendement Python de
Appeler CPLEX depuis Python (DO cplex)
Deep Python appris de DEAP
Exécutez Openpose sur Python (Windows)
Publier de Python vers Slack
Exécutez python avec PyCharm (Windows)
Fonctionnalités de grammaire ajoutées à partir de Python3.6
Flirter de PHP à Python
Exécutez Python avec CloudFlash (arm926ej-s)
Exécuter des tâches automatisées en Python
Rendre MeCab disponible à partir de Python 3
Exécuter des commandes shell en Python
Exécuter Python unittest en parallèle
Informations obtenues à partir de tweet_id (Python)
OCR à partir de PDF en Python