Rumah > pembangunan bahagian belakang > Tutorial Python > Cara Menukar PDF kepada Markdown Menggunakan PyMuPDFM dan Penilaiannya

Cara Menukar PDF kepada Markdown Menggunakan PyMuPDFM dan Penilaiannya

Linda Hamilton
Lepaskan: 2024-10-07 18:12:31
asal
413 orang telah melayarinya

PyMuPDF4LLM ialah pustaka yang direka untuk menukar PDF kepada format Markdown. Di sini, saya akan berkongsi pengalaman saya menguji perpustakaan ini.

Pemasangan

Mulakan dengan memasang perpustakaan menggunakan arahan berikut:


pip install pymupdf4llm


Salin selepas log masuk

Penggunaan

Penggunaan asas agak mudah, hanya memerlukan tiga baris kod untuk menukar PDF kepada Markdown:


import pymupdf4llm
md_text = pymupdf4llm.to_markdown("input.pdf")
print(md_text)


Salin selepas log masuk

Anda boleh menentukan hujah untuk melaraskan cara kandungan diekstrak.

Mengekstrak Teks mengikut Halaman

Secara lalai, keseluruhan PDF ditukar kepada satu output teks. Walau bagaimanapun, anda boleh mengekstrak halaman teks demi halaman dengan menyatakan page_chunks=True.


md_text = pymupdf4llm.to_markdown("input.pdf", page_chunks=True)


Salin selepas log masuk

Mengekstrak Imej

Untuk mengekstrak imej sebagai fail, gunakan pilihan write_images=True:


md_text = pymupdf4llm.to_markdown("input.pdf", write_images=True)


Salin selepas log masuk
Salin selepas log masuk

Ia juga mungkin untuk membenamkan imej secara terus dalam Markdown menggunakan pengekodan base64:


md_text = pymupdf4llm.to_markdown("input.pdf", embed_images=True)


Salin selepas log masuk

Penilaian Keputusan Penukaran

Untuk ujian, pelbagai PDF dengan elemen Markdown berbeza telah digunakan.

How to Convert PDFs to Markdown Using PyMuPDFM and Its Evaluation

Penukaran Tajuk

Pengepala ditukar dengan betul ke dalam format Markdown. Berikut adalah sebahagian daripada keputusan:


# Sample Markdown Guide

This is a sample markdown file that includes various features for quick reference.

## 1. Headers

...

## 3. Lists


Salin selepas log masuk

Teks Tebal dan Italic

Pemformatan tebal dan condong juga ditukar dengan betul:


**Bold: **Bold Text****

_Italic: *Italic Text*_

**_Bold and Italic: ***Bold and Italic***_**


Salin selepas log masuk

Penukaran Senarai

Senarai tertib pada tahap pertama ditukar tanpa isu, tetapi senarai bersarang dan senarai tidak tersusun tidak ditukar dengan tepat.

How to Convert PDFs to Markdown Using PyMuPDFM and Its Evaluation


## 3. Lists

### Unordered List

Item 1

Item 2

Sub-item 1

Sub-item 2

### Ordered List

1. First item

2. Second item

1. Sub-item A

2. Sub-item B


Salin selepas log masuk

Penukaran Pautan

URL pautan diekstrak, tetapi keseluruhan baris yang mengandungi pautan menjadi hiperpautan, menyimpang daripada format asal.

How to Convert PDFs to Markdown Using PyMuPDFM and Its Evaluation


## 4. Links and Images

[You can add links using [Link Text](URL).](https://www.example.com/)


Salin selepas log masuk

Pengekstrakan Imej

Imej tidak diekstrak secara lalai tetapi boleh disimpan secara setempat dengan write_images=True.


md_text = pymupdf4llm.to_markdown("input.pdf", write_images=True)


Salin selepas log masuk
Salin selepas log masuk

Imej yang disimpan kemudiannya dirujuk dalam Markdown seperti berikut:


<p>### Image Example</p>

<p>![](input.pdf-1-0.png)</p>

Salin selepas log masuk




Penukaran Jadual

Jadual ringkas tanpa sempadan menegak tidak ditukar dengan tepat (kemungkinan kerana sempadan lajur samar menyebabkan jadual dianggap sebagai teks biasa).

How to Convert PDFs to Markdown Using PyMuPDFM and Its Evaluation


<p>## 5. Tables</p>

<p>**Column 1** **Column 2** **Column 3**</p>

<p>Row 1 Data A Data B</p>

<p>Row 2 Data C Data D</p>

Salin selepas log masuk




Penukaran Kod

Blok kod ditukar dengan betul, tetapi spesifikasi bahasa (mis., python) tidak dikekalkan. Penukaran kod dalam talian juga mempunyai masalah.

How to Convert PDFs to Markdown Using PyMuPDFM and Its Evaluation


<p>## 6. Code</p>

<p>### Inline Code</p>

<p>Use backticks for inline code: print("Hello, world!")</p>

<p>### Code Block</p>

<p>Use triple backticks for code blocks:</p>

<p>```<br>
def greet(name):<br>
  return f"Hello, {name}!"<br>
print(greet("Markdown"))<br>
```</p>

Salin selepas log masuk




Teks Berbilang Baris

Untuk teks berbilang baris, pemisah baris dikekalkan seperti yang dipaparkan dalam PDF asal.

How to Convert PDFs to Markdown Using PyMuPDFM and Its Evaluation


<p>Markdown is a lightweight and versatile markup language favored by developers, writers, and bloggers alike</p>

<p>due to its simplicity in formatting text, enabling users to create readable and well-structured documents—</p>

<p>whether for documentation, blog posts, or articles—without the complexity of HTML, while also offering the</p>

<p>ability to convert content seamlessly into other formats like HTML, PDF, and even slideshows, making it an</p>

<p>ideal choice for projects that require both clarity and flexibility in presentation.</p>

Salin selepas log masuk




Kesimpulan

Walaupun menghadapi cabaran dalam menukar senarai dan pautan dengan tepat, PyMuPDF4LLM ialah alat yang berguna untuk menukar PDF kepada Markdown. Ia boleh berfungsi secara tempatan tanpa memerlukan model bahasa luaran, menjadikannya sesuai untuk persekitaran yang tidak tersedia akses internet.

Atas ialah kandungan terperinci Cara Menukar PDF kepada Markdown Menggunakan PyMuPDFM dan Penilaiannya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan