Citat:
Ursprungligen postat av
Office
En liten fråga bara, har inte skummat igenom tråden, men varför använder du Excel? Tänker att när du ändå håller på med Python så finns det ju andra alternativ. Jag håller aldrig på med Excel så det kanske är jättebra eller det kanske finns någon stor fördel med det?
Sen kanske du inte ska skriva till endast en fil, utan istället kanske samla in 1000 företag, spara i en fil, samla in 1000 till och spara i nästa o.s.v.
Ja huvudsakligen är det för att det är det enda jag lärt mig arbeta mot, och jag behöver spara resultatet hittills någonstans med jämna mellanrum ifall koden stöter på ett fel eller stannar av annan orsak. Första gången jag gjorde det här, när jag sammanställde filerna i fråga, så genererade jag fyra stycken 15.000 objekt långa listor inuti python som jag slutligen itererade genom och sparade till excel.
Väldigt riskfyllt om det inte varit för att kommunernas företagsregister är väldigt stabila att scrapa.
Sedan är det väldigt praktiskt att jobba mot då jag har en lista på 15.000 företag och först och främst bara vill söka de företag som har ett särskilt antal anställda enligt företagsregistret (vilket jag har i en kolumn, men det saknas för rätt så många varvid man kan utgå från att det är enskilda firmor), eftersom det är enkelt att sortera fram dessa eller leta vilka rader som har så många anställda i excel.
För närvarande så sorterar jag bara enligt antal anställda och kör dokumentet från toppen, och när jag ska till ett annat intervall så markerar jag de raderna som start och stop för iterationen.
Hade excel bara varit snabbare på att jobba med sådana jättefiler så hade det varit perfekt.
Det går normalfort att scrolla med mushjulet, men att dra scrollbaren för snabbare översikt är rätt så segt trots att filen knappt är 1MB.
Eftersom jag fortfarande är i det stadiet att koden stannar av rätt så frekvent så behöver jag ha snabb översikt över hur mycket som bearbetats så att jag kan fortsätta programmet därifrån.
Har tagit lärdom av det nu och ska stanna av programmet då och då och ta backup om filen inte är korrupt.
Kanske torde koda in att den gör nya separata kopior för var 1000:e iteration nu när jag tänker på det, istället för att bara traggla på samma dokument och göra manuella kopior.
Slitage är ju ingen fara nu när jag ramdiskar.
Men nu har den jobbat genom 300 företags nummer och bokslut på 10 minuter utan problem, så jag hyser gott hopp till att det mesta är ordnat nu.
Nästa steg är nog att dela upp det hela i separata filer och köra flera instanser (trådar?) samtidigt. Undrarns hur jag ska automatisera det bäst.
Kanske är enklast att köra en instans av programmet via powershell för varje dokument. Blir en del manuellt arbete, men ändå inte så farligt då det bara blir typ 4 filer per kommun, och jag tänkte inte köra hela Sverige riktigt än även om det hägrar då jag gärna vill ha en jättefil att låta tensorflow brottas med när jag sätter mig med det.
Men det är något fnul här, så nu är filen korrupt igen.
Excel vägrar ta den, men google sheets och libreoffice fungerar.
Verkar vara något knepigt med openpyxl.