Ich bin ein Programmierneuling, und die Hälfte meines Problems ist, dass ich nicht die richtigen Fragen zu stellen finden kann - ich habe mir viele Stack Overflow Beiträge zu versuchen, durch meine Probleme zu arbeiten, aber Ich konnte das, was ich gefunden habe, nicht auf meine Situation anwenden. Folglich brauche ich deine Hilfe, Internet.E-Mail eine Liste der Verkäufe mit Python3
Ich versuche, ein Programm zu erstellen, das einmal pro Woche mit Windows Scheduler ausgeführt wird. Wenn es läuft, es sollte:
- eine Excel-Datei konsultieren,
- einige Informationen aus den letzten vierzig Zeilen extrahieren,
- ein Formular E-Mail erstellen,
- umfassen die extrahierten Informationen in Form E-Mail ,
- senden Sie die E-Mail-Formular an einen bestimmten Empfänger.
Ich habe SMTP adaequat einschließlich der Form E-Mail-Generators, und ich kann die Statistiken aus dem Excel-Blatt erhalten mit openpyxl, aber ich kann nicht die Informationen in ein nutzbares Format ringen zu senden .
Der Code, den ich bisher bekommen habe (für dieses Info Handhabung) sieht wie folgt aus:
# Open stats sheet
wb = openpyxl.load_workbook('Stats.xlsx')
sheet = wb.get_sheet_by_name('DATA')
# Get the author, title and price of last forty sales
ultimateRow = sheet.max_row + 1
limitRow = sheet.max_row - 40
recentList = []
for row in range(limitRow, ultimateRow):
recentSales = []
for column in 'GHI':
cell_name = '{}{}'.format(column, row)
recentSales.append(sheet[cell_name].value)
recentList.append(recentSales)
print(*recentList)
Was ich von dem bekommen eine ganze Rieses Text ist, wie folgt aus:
['DEIGHTON, Len (born 1929).', 'Twinkle Twinkle Little Spy.', 20] ['BROOKE, Rupert (1887-1915); ABERCROMBIE, Lascelles (1881-1938); DRINKWATER, John (1882-1937); GIBSON, Wilfrid Wilson (1878-1962).', 'New Numbers Volume 1 Number 3.', 76] ['SHUTE, Nevil.', 'A Town Like Alice.', 100] ['SWINBURNE, Algernon Charles (1837-1909).', 'A Song of Italy.', 15]
im Idealfall, was ich in einer E-Mail senden möchte, würde so aussehen, mit einer neuen Linie für jeden einzelnen Verkauf Artikel:
DEIGHTON, Len (born 1929). - Twinkle Twinkle Little Spy.- 20
BROOKE, Rupert (1887-1915); ABERCROMBIE, Lascelles (1881-1938); DRINKWATER, John (1882-1937); GIBSON, Wilfrid Wilson (1878-1962) - New Numbers Volume 1 Number 3. - 76
ich eine E-Mail Körper geschrieben haben, die eingerichtet ist, um die Liste der Informationen umfassen ein Format wie folgt verwendet:
body = ''' This is an email. Here's the list: {}'''.format(list)
Alle Hinweise auf den kein Zweifel scheußlichen Code oben dankbar empfangen würde.
Schauen Sie sich mit „“ .join (recentSales) Listen in Strings zu drehen. Und schauen Sie sich die neueste openpyxl-Dokumentation an. –