بنقرة واحدة
Extract text, merge, split, and search PDF documents. Use whenever the user mentions a PDF file.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Extract text, merge, split, and search PDF documents. Use whenever the user mentions a PDF file.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Navigate large codebases and make surgical edits while following project conventions. Use for refactors, feature work, and bug fixes spanning multiple files.
Inspect, filter, and summarize JSON, CSV, and log data using jq, awk, and pandas.
Read and edit Microsoft Word documents (.docx). Use for document editing and content extraction.
Branch, commit, rebase, and resolve conflicts. Use for PR prep, conventional commit messages, and history cleanup.
Author and edit README, CHANGELOG, and other markdown documentation, following the project's existing style.
Read, write, and transform CSV and XLSX files. Use for Excel, tabular data, bulk row edits, and column transforms.
| name | |
| description | Extract text, merge, split, and search PDF documents. Use whenever the user mentions a PDF file. |
pypdf (pure Python) via run_code first.pypdf is not installed, install via execute_shell: pip install --user pypdfpdftotext (poppler) via execute_shell.tesseract + ocrmypdf.Extract text from all pages:
import pypdf
reader = pypdf.PdfReader("/path/to/file.pdf")
for i, page in enumerate(reader.pages):
text = page.extract_text()
print(f"--- Page {i+1} ---")
print(text)
Extract text from page range:
import pypdf
reader = pypdf.PdfReader("/path/to/file.pdf")
# Pages 3-5 (0-indexed: 2-4)
for page in reader.pages[2:5]:
print(page.extract_text())
Get page count and metadata:
import pypdf
reader = pypdf.PdfReader("/path/to/file.pdf")
print(f"Pages: {len(reader.pages)}")
print(f"Metadata: {reader.metadata}")
Merge PDFs:
import pypdf
merger = pypdf.PdfMerger()
for path in ["/path/a.pdf", "/path/b.pdf", "/path/c.pdf"]:
merger.append(path)
merger.write("/path/merged.pdf")
merger.close()
print("Merged.")
Split: extract pages 3-7 to a new file:
import pypdf
reader = pypdf.PdfReader("/path/to/file.pdf")
writer = pypdf.PdfWriter()
for page in reader.pages[2:7]: # 0-indexed
writer.add_page(page)
with open("/path/pages_3_to_7.pdf", "wb") as f:
writer.write(f)
Fallback: pdftotext via execute_shell (requires poppler):
pdftotext /path/to/file.pdf - # stdout
pdftotext -f 3 -l 7 /path/to/file.pdf output.txt # page range
Check if poppler is installed:
command -v pdftotext && echo "available" || echo "not found"
pypdf extraction returns empty strings. Use OCR fallback.reader = pypdf.PdfReader(path, password="secret").pypdf is a third-party package. Install via execute_shell before using in run_code.scripts/pdf_text.py — extract text with optional page rangescripts/pdf_merge.py — merge a list of PDFs into one