PPTX conversion takes hours on charts bound to a whole Excel column
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 22/100
Direzione di ricerca
Start from _convert_chart_to_markdown in the PPTX converter, where series.values from python-pptx is read once per declared point. Reproduce with a chart whose series cache declares many points but few hold data, then time the conversion. Pull request #2702 is already open against this issue, so check it and its review before starting any separate change. Done means large charts convert in seconds with the same Markdown output as before.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Converting a .pptx with a chart can take hours. #2227 removed the extra loop in _convert_chart_to_markdown, but series.values in python-pptx is itself quadratic: for each declared point it runs an XPath search over all of the series' points.
When a series is bound to a whole column, its cache can declare many points, however few cells hold data. A deck of ours had
two such scatter charts with about 20,600 real points each. With markitdown 0.1.8 and python-pptx 1.0.2 each lookup took about 7 ms, so about 2 hours per chart.
python-pptx has had no commits since 2024, so I'd fix it here by reading each series' points once. PR to follow.
- Lingua principale
- Python
- Stelle
- 194k
- Fork
- 14.5k
- Merge medio
- 1h 43m
- PR unite (30g)
- 8
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di microsoft/markitdown
-
DOCX: math pre-processing re-parses every document.xml even without equations (32 s -> 17.5 s on a 12.5 MB document)Forse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 89/100
microsoft/markitdown#2834 ·
I maintainer di solito rispondono entro 1 giorno
-
URL fetch sends default python-requests User-Agent, Wikipedia returns 403Forse già presa @sushan5140 l’ha presa 4 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
microsoft/markitdown#2820 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Valid Atom feeds with zero entries are rejected as an unknown feed typeForse già presa @pujitha24 l’ha presa 11 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
microsoft/markitdown#2781 ·
I maintainer di solito rispondono entro 1 giorno
-
DOCX: footnote references and back-links point to anchors that don't exist in the MarkdownForse già presa @sun04222 l’ha presa 15 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
microsoft/markitdown#2743 ·
I maintainer di solito rispondono entro 1 giorno
-
DOCX math: a delimiter with several arguments keeps only the last oneForse già presa @drakeo338 l’ha presa 37 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
microsoft/markitdown#2573 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di microsoft/markitdown
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
huggingface/accelerate#4511 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
pylint-dev/pylint#11791 ·
I maintainer di solito rispondono entro 1 giorno
-
Rasterio granule reads never retry, so one 503 (Service Unavailable) fails the whole requestForse già presa @chuckwondo l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
developmentseed/titiler-cmr#305 ·
I maintainer di solito rispondono entro 1 giorno
-
community enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno