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

Cara Menukar PDF kepada Markdown Menggunakan PyMuPDFM dan Penilaiannya

Linda Hamilton
Linda Hamiltonasal
2024-10-07 18:12:31111semak imbas

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


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)


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)


Mengekstrak Imej

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


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


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


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


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


Teks Tebal dan Italic

Pemformatan tebal dan condong juga ditukar dengan betul:


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

_Italic: *Italic Text*_

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


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


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/)


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)


Imej yang disimpan kemudiannya dirujuk dalam Markdown seperti berikut:


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

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




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>




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>




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>




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!

Kenyataan:
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 sebelumnya:Pemahaman Senarai PythonArtikel seterusnya:Pemahaman Senarai Python