Michael-Beutling / Amazon-MoneyMoney

Give you a overview about your amazon orders in MoneyMoney
91 stars 8 forks source link

amazon-orders.lua:462: attempt to index upvalue 'html' (a nil value) #9

Closed Leololololo closed 4 years ago

Leololololo commented 4 years ago

Echt tolles Plugin! Ersteinmal Danke! Leider läuft es bei mir irgendwie nicht. Neuste MoneyMoney Beta ist am start.

Anlegen des Kontos ist kein Problem nur nach dem ersten refresh kommt folgende Fehlermeldung und es wird kein "kauf" abgerufen.

amazon-orders.lua:462: attempt to index upvalue 'html' (a nil value)

Ich habe einen deutschen Amazon Business Account.

Michael-Beutling commented 4 years ago

Welche Version vom Script (commit) hast Du am Start?

Leololololo commented 4 years ago

Neuste Version von der Github Seite. Heute mal mit einem anderen Mac ausprobiert und kriege gleich beim Setup folgende ähnliche Meldung:

  Lade Kontostand und Umsätze für Amazon Unkown ...
      Getting transactions since 12.04.2019...
      Refresh inverse
      amazon-orders.lua:233: bad argument #1 to 'request' (string expected, got nil)
Michael-Beutling commented 4 years ago

Es gibt eine Beta amazon-orders.lua

Leololololo commented 4 years ago

Cool danke, wollte sie gleich ausprobieren. Wenn ich das .txt wegnehme und sie in den Extension Ordner schmeisse taucht leider nichts in meinem Moneymoney auf. Auch nach mehrmaligem Moneymoney neustart nicht :(

Michael-Beutling commented 4 years ago

Hast Du eine Beta-Version von MoneyMoney und die Signaturprüfung von MoneyMoney abgeschaltet?

Leololololo commented 4 years ago

ja, die anderen extensions tauchen auf.

Michael-Beutling commented 4 years ago

Kommen Meldungen im Log-Fenster? Im Terminal eingeben: ls -l ~/Library/Containers/com.moneymoney-app.retail/Data/Library/Application\ Support/MoneyMoney/Extensions/ liefert: -rw-r--r-- 2 micha staff 39610 13 Apr 09:31 amazon-orders.lua

Leololololo commented 4 years ago

guter tipp...also bei mir liefert es

-rw-r--r--@ 1 macleo staff 39610 13 Apr 11:12 amazon-orders.lua.txt

obwohl ich das txt im finder nicht mehr sehe...wtf...

Michael-Beutling commented 4 years ago

Im Finder in den Einstellungen/Erweitert "Alle Dateinamensuffixe einblenden", Haken raus. Kategorie "Bescheuerte Standardeinstellungen"

Leololololo commented 4 years ago

Oh man! Das stelle ich bei allen immer aus und bei mir selbst vergesse ich es. Danke ...ich schäme mich

Jetzt klappt es beim einbinden. Aber dann abrufen des ersten Umsatz habe ich das hier.

amazon-orders.lua:895: attempt to index upvalue 'html' (a nil value)

Michael-Beutling commented 4 years ago

Das könnte Deinen Business Account zusammenhängen.

Bitte diese Version installieren: https://raw.githubusercontent.com/Michael-Beutling/Amazon-MoneyMoney/issue9/amazon-orders.lua

Dann MoneyMoney schließen und neu starten (um das Log löschen), Amazon Konto einrichten/bzw. neu laden, im Log alles markieren und kopieren, im Terminal pbpaste |grep "1> line"eingeben

So sollte es aussehen: 1> line 911 1> line 912 1> line 915 1> line 916 1> line 917 13:37:37 1> line 918 1> line 919 1> line 921 1> line 924 1> line 925 1> line 927 1> line 928 1> line 929 1> line 941 1> line 221 1> line 224 1> line 237 1> line 238 1> line 243 ....... 1> line 1053 1> line 1054 1> line 1064

Was kommt bei Dir?

Leololololo commented 4 years ago

sorry ich dummerchen.

MacLeos-iMac-2:~ macleo$ pbpaste |grep "1> line" 1> line 911 1> line 912 1> line 915 1> line 916 1> line 917 1> line 918 1> line 919 1> line 921 1> line 924 1> line 925 1> line 927 1> line 941 1> line 221 1> line 224 1> line 237 1> line 238 1> line 243 1> line 246 1> line 254 1> line 255 1> line 258 1> line 267 1> line 258 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 260 1> line 262 1> line 259 1> line 267 1> line 270 1> line 271 1> line 272 1> line 273 1> line 302 1> line 303 1> line 304 1> line 328 1> line 330 1> line 331 1> line 333 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 340 1> line 339 1> line 344 1> line 349 1> line 942 1> line 221 1> line 222 1> line 944 1> line 893 1> line 894 1> line 895

Michael-Beutling commented 4 years ago

Das zuviel hast zumindest den Vorteil das ich gleich das Problem sehen. In den Logs ist übrigens immer die komplette Antwort von Amazon, also etwas mehr als man zeigen möchte ;)

Michael-Beutling commented 4 years ago

Neue Version: https://raw.githubusercontent.com/Michael-Beutling/Amazon-MoneyMoney/issue9/amazon-orders.lua

Leololololo commented 4 years ago

Das zuviel hast zumindest den Vorteil das ich gleich das Problem sehen. In den Logs ist übrigens immer die komplette Antwort von Amazon, also etwas mehr als man zeigen möchte ;)

Ja das hatte ich mir in dem moment auch gedacht, hatte nur die schnauze voll das du blinde kuh spielen musst. Ändere gleichmal vorsorglich das Kennwort....es ist ja wenigstens noch 2faktor dringewesen. Es sieht bisher gut aus! Ich glaube wir haben es! Er ruft jetzt ab!. VIELEN VIELEN DANK FÜR DIE GEDULD!

Leololololo commented 4 years ago

verdammt. Er zeigt mir jetzt nur 5 purchases und das sind wahrscheinlich die früher privat gekaufen dinge da es nur firetv apps sind etc.

Die vielen Business purchases tauchen nicht auf. Any thoughts?

Michael-Beutling commented 4 years ago

Das hatte ich schon befürchtet, Amazon hat vermutlich für jede Kundenart eine eigene Darstellung der Bestellungen. Ich schau mal, ob ich da einen praktikablen Lösungsweg finde.

Michael-Beutling commented 4 years ago

weiter gehts, ich hoffe ich habe einen Ansatz gefunden und zwar ein Python Script (https://github.com/Michael-Beutling/Amazon-MoneyMoney/blob/issue9/HTMLWasher.py) was eine Webseite anonymisiert aber die Struktur erhält.

Im Safari (Chrome ging bei mir nicht) die Bestellübersicht aufrufen und die Quelltext der Seite kopieren.

mit pbpaste |python3 HTMLWasher.py sollten zwei Dateien erzeugt werden, eine html Datei zum posten und eine txt Datei in der die Sachen drin sind die man nicht posten möchte ;)

ggf. Muss man Python3 per brew und HTMLParser per pip3 nach installieren.

Beispiel: public_page.html.zip

timpritlove commented 4 years ago

Also bei mir ging es mit dem alten Release und dem Business Account auch nicht, die aktuelle Beta arbeitet sich laut Log aber zumindest ohne Fehler beständig durch alle Jahre durch, aber am Ende landen keine Transaktionen in MoneyMoney.

Kann ich irgendwie dazu beitragen, den Bug zu finden?

Michael-Beutling commented 4 years ago

@timpritlove Erstmal Danke für die Aufmerksamkeit in der Freakshow. Irgendwas ist bei Business Accounts in der Darstellung anders, deswegen hatte ich ja das kleine Pythonscript hochgeladen. Wenn jemand mit einen Business Account mal die Bestellübersicht (eine Seite reicht erstmal) da durch schieben würde und die public hier hochladen würde, hätte ich schon mal die Struktur.
Danke.

widomattern commented 4 years ago

Bei mir verhält es ich genau wie bei timpritlove. Hier die Struktur von meinem Business Account: public_page.html.zip

Michael-Beutling commented 4 years ago

Danke, im Kopf der Übersicht wurden 4 Element gefunden statt 3. Bitte https://raw.githubusercontent.com/Michael-Beutling/Amazon-MoneyMoney/issue9/amazon-orders.lua prüfen ob es klappt. Es sollten Meldungen kommen am Ende unkown element ..., hier bitte eine Rückmeldung ob das in die Bestellung mit rein soll.

widomattern commented 4 years ago

Die Bestellungen wurden mit https://raw.githubusercontent.com/Michael-Beutling/Amazon-MoneyMoney/issue9/amazon-orders.lua nun vollständig abgerufen und werden in MoneyMoney auch richtig angezeigt.

Die Meldungen am Ende mit beinhalten den Firmennamen: 17:28:12 1> Received: 1> string='unkown element' string='Firma XYZ GmbH & Co. KG' ...

In meinem persönlichen Fall ist das Feld nicht weiter von Bedeutung, da ich nur eine Firma in dem Account habe - für Anwender mit mehren Firmen könnte diese Info jedoch von Bedeutung sein. In der Bestellübersicht von Amazon wird in dem Feld AUFGEGEBEN VON auch noch der Name des Benutzer-Accounts (Einkäufer) mit Vor und Zuname ausgegeben, diese Informationen wäre (evtl. auch in Kombination mit dem Firmenname) in Bestellungen evtl. für alle Business-Account-Nutzer relevant.

Unabhängig davon wird beim Anlegen des Business Accounts der Name noch nicht erkannt/übernommen: 17:26:40 Received: Web Banking account: Amazon Unkown (mix) Web Banking account: Amazon Unkown (normal) Web Banking account: Amazon Unkown (inverse) ... Bei einem privaten Account wird Amazon <Vorname> angezeigt.

Auch der Abruf (mix) eines privaten Accounts lief nun vollständig (mit Saldo = 0) und in einem Durchgang über alle (>1.000) Bestellungen.

Michael-Beutling commented 4 years ago

@widomattern Steht in T70 der Benutzername? Der Class Name "abnav-accountfor" deutet auf das Konto hin. Welche Textmarken sind die Namen die meinst?

widomattern commented 4 years ago

T64='Lieferung an {Firma XYZ (ohne Rechtsform)}' T65='{PLZ} {Ort}' T67='DE' T69='Hallo, {Vorname Besteller}' T70='Konto für Firma XYZ GmbH & Co. KG' T133='Firma XYZ GmbH & Co. KG' T134='Aufgegeben von' T135='{Vor- und Nachname von Besteller}'

Michael-Beutling commented 4 years ago

Danke für die Zuarbeit. Passt es so https://raw.githubusercontent.com/Michael-Beutling/Amazon-MoneyMoney/issue9/amazon-orders.lua

Wenn ich keinen Dreher drin habe sollte der Mandant (Firma xyz) als Konto und der Besteller als Referenz in MoneyMoney geführt werden. Hinweis: Die Daten werden erst sichtbar wenn man eine Bestellung ausgewählt hat. Die Suche funkt über beide Felder, aber die automatische Kategoriezuordnung geht leider nur bei dem Referenzfeld. Bin für etwaige Verbesserungsvorschläge dankbar.

widomattern commented 4 years ago

Sehr gerne. Die Anzeige des Firmennamens beim Anlegen eines Business Accounts funktioniert jetzt: 09:50:37 Received: Web Banking account: Amazon Firma XYZ GmbH & Co. KG (mix) Web Banking account: Amazon Firma XYZ GmbH & Co. KG (normal) Web Banking account: Amazon Firma XYZ GmbH & Co. KG (inverse)

Auch die Übernahme des Firmennamens {Firma XYZ GmbH & Co. KG} in das Feld Konto und die Übernahme des {Vor- und Nachname von Besteller} in die Referenz funktionieren.

Und auch das Anlegen und der Abruf eines privaten Accounts funktionieren wie bisher. Evtl. wäre es hier noch hilfreich den Namen (und evtl. die Adresse) aus dem Feld Versandadresse in die Referenz zu speichern, so wäre bei mehreren Versandadressen auch hier eine einfache Zuordnung möglich.

Für mich löst somit deine MoneyMoney-Erweiterung aktuell ein bisher Zeit-aufwendiges Problem bei der Zuordnung von Lastschriften und Bestellungen von Amazon in meiner Buchhaltung. Vielen Dank.

widomattern commented 4 years ago

Evtl. ist as auch bei privaten Accounts hilfreich den Account {Vor- und Nachname} in das Feld Konto zu übernehmen, so dass Menschen mit mehreren privaten Accounts diese besser unterscheiden können.

Michael-Beutling commented 4 years ago

@widomattern Meinst es so? https://raw.githubusercontent.com/Michael-Beutling/Amazon-MoneyMoney/issue9/amazon-orders.lua

widomattern commented 4 years ago

Ja, danke.

Michael-Beutling commented 4 years ago

Jetzt ist es der Kontoinhaber, hat den Vorteil das der Name des Kontos (Links sichtbar) und des Kontoinhabers, der sonst nicht sichtbar unabhängig, eingestellt werden können.

widomattern commented 4 years ago

Danke, funktioniert.

Leololololo commented 4 years ago

Ui...soviel passiert hier! Bei mir geht es jetzt auch! Bin Super Glücklich! Danke Michael!

timpritlove commented 4 years ago

Für mich funktioniert das leider noch nicht. Bei mir wird nur eine Bestellung korrekt in MoneyMoney importiert. Alle anderen werfen Fehler im Log a la:

1> string='unkown elements' string='13. Februar 2019#Tim Pritlove#EUR 14,95#Ersatzteil Kopfhörer#304-5405586-5482757'

Michael-Beutling commented 4 years ago

Jetzt sollte es klappen, das zusätzliche Feld ("Ersatzteil Kopfhörer") wird als Umsatzart eingetragen und muss mindestens fünf Zeichen lang sein, sonst unterdrückt es MoneyMoney.

https://raw.githubusercontent.com/Michael-Beutling/Amazon-MoneyMoney/issue9/amazon-orders.lua

timpritlove commented 4 years ago

Jetzt kriege ich ein

1> amazon-orders.lua:823: table index is nil

Sowohl bei Reload als auch bei Neueinrichtung des Accounts.

timpritlove commented 4 years ago

Ich kann Dir auch temporär Zugang zu dem Account geben, wenn es weiterhilft.

Michael-Beutling commented 4 years ago

@timpritlove Danke für das Vertrauen, aber nicht nötig. Hatte es kaputt optimiert.

Next try: https://raw.githubusercontent.com/Michael-Beutling/Amazon-MoneyMoney/issue9/amazon-orders.lua

timpritlove commented 4 years ago

Jetzt sind die Fehler weg, aber es taucht trotzdem nur eine Transaktion auf. Alle, die bisher Fehler geworfen haben werden nicht übergeben.

Michael-Beutling commented 4 years ago

Zahlendreher :( Jetzt geht es in der Beta weiter: https://raw.githubusercontent.com/Michael-Beutling/Amazon-MoneyMoney/beta/amazon-orders.lua