Ich werde ein Copy-Paste-Handwerker sein ╭ (・ ㅂ ・) و ̑̑ Gut!
╰ (`• ω •) ╮- = ni <Es ist mühsam, verschiedene Dinge von der kostenlosen QR-Code-Erstellungsseite zu machen. Ich kann keine Website erstellen, die Parameter festlegt und QR-Code generiert (꒪ ཫ ꒪;)
Artikel | Ausführung | Bemerkungen |
---|---|---|
Python | 3.7.5 |
Artikel | Ausführung | Bemerkungen |
---|---|---|
pandas | --- | Wird zum Lesen von Excel-Dateien verwendet |
xlrd | --- | Erforderlich, um Excel in Pandas zu laden |
PyInstaller | --- | exe Umwandlung |
qrcode | --- | QR-Code-Generierung |
Pillow | --- | PNG-Bilderstellung |
Wird verwendet, um die Umgebung auszurichten
requirements.txt
altgraph==0.17
colorama==0.4.3
future==0.18.2
numpy==1.19.0
pandas==1.0.5
pefile==2019.4.18
Pillow==7.1.2
pip==19.2.3
PyInstaller==3.6
python-dateutil==2.8.1
pytz==2020.1
pywin32-ctypes==0.2.0
qrcode==6.1
setuptools==41.2.0
six==1.15.0
xlrd==1.2.0
ExcelToQRCode.py
import sys
import os
import pandas as pd
import qrcode
import base64
def main():
#Kommandozeilenargumente
args = sys.argv
#Nicht verarbeiten, wenn weniger als 2 Argumente vorhanden sind
if len(args) < 2:
exit()
#Beurteilung von Excel-Dateien
split = os.path.splitext(args[1])
if split[1] != '.xlsx':
exit()
#Holen Sie sich das erste Blatt
excel_data = pd.read_excel(args[1], sheet_name = 0, encoding='utf-8')
param_list = []
for i, row in excel_data.iterrows():
if i > 0:
temp = ""
for value in row.iloc[2:8]:
temp += str(value) + '|'
temp = temp[:-1]
full_path = os.getcwd() +'\\' + row.iloc[1] + '.png'
param_list.append((full_path, temp))
for index in range(len(param_list)):
image_qr = qrcode.make(base64.b64encode(param_list[index][1].encode('utf-8')))
image_qr.save(param_list[index][0])
if len(param_list) < 1:
print("Es musste kein QR-Code erstellt werden")
else:
print("Ich habe einen QR-Code erstellt")
if __name__ == '__main__':
main()
Geben Sie den folgenden Befehl ein, um es exe zu machen Die Dateigröße von exe wird groß, aber ich schließe meine Augen (˘ω˘)
python
pyinstaller hoge.py --onefile --noconsole
Ziehen Sie die xlsx-Datei per Drag & Drop auf exe
Utility.cs
public static class Utility
{
public static string Base64Decode(string value)
{
return System.Text.Encoding.UTF8.GetString(System.Convert.FromBase64String(value));
}
public static List<string> GetQRCordData(string value)
{
string data = Utility.Base64Decode(value);
return new List<string>(data.Split(new[] { "|" }, System.StringSplitOptions.None));
}
}
Recommended Posts