Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/cyberfantics/jupyter-to-pdf-processor

A Python-based tool for automating PDF processing and Jupyter Notebook conversion. Customize PDFs with borders, headers, and footers while ensuring seamless file management. Streamline your document workflows with this user-friendly and efficient solution!
https://github.com/cyberfantics/jupyter-to-pdf-processor

jupyter-notebook open-source pdf-automation scraping selenium selenium-python

Last synced: 20 days ago
JSON representation

A Python-based tool for automating PDF processing and Jupyter Notebook conversion. Customize PDFs with borders, headers, and footers while ensuring seamless file management. Streamline your document workflows with this user-friendly and efficient solution!

Awesome Lists containing this project

README

        

# **Cyber Fantics PDF Processor**

A powerful tool designed to simplify the conversion of Jupyter Notebooks to PDFs and enhance PDF files with customized headers, footers, and borders. With features like automation, customization, and border integration, this tool is perfect for students, researchers, and professionals who frequently work with notebooks and PDFs.

---

## **Features**
- **Jupyter Notebook to PDF Conversion:**
- Automatically convert `.ipynb` files into high-quality PDFs using Selenium and browser automation.

- **PDF Processing:**
- Add custom borders, headers, and footers to existing PDFs.
- Overlay page numbers and text with configurable colors.

- **Customization:**
- Input owner names for headers and specify custom border colors in HEX format.

- **User-Friendly:**
- Console-based interactive interface with banners for easy navigation.

- **Automated Workflow:**
- Automatically organizes output into a structured directory.

---

## **How It Works**

### 1. **Converting Jupyter Notebooks to PDF**
- Upload your Jupyter Notebook file to a web-based conversion tool using Selenium.
- The tool downloads the converted PDF and saves it in a designated folder.

### 2. **Processing Existing PDF Files**
- Add professional-looking borders, headers, and footers to your PDFs.
- Specify details like the owner's name and border color for complete customization.

### 3. **Combining Both Workflows**
- Convert Notebooks to PDFs and enhance them in a single automated workflow.

---

## **Usage**

### **Installation**
Clone the repository and install the required dependencies:
```bash
git clone https://github.com/cyberfantics/jupyter-to-pdf-processor
cd jupyter-to-pdf-processor
pip install -r requirements.txt
```

## **Running the Application**

### **Run the Script**
To start the application, use the following command in your terminal:
```bash
python main.py
```

# **Options**
1. **Convert Jupyter Notebooks to PDFs.**
2. **Process existing PDF files.**
3. **Convert Notebooks and process PDFs in one go.**

---

## **Customization**

### **Border Colors**
Input custom border colors in HEX format (e.g., `#095d40`).

### **Headers and Footers**
Add personalized text for headers and footers.

---

## **Dependencies**

### **Common Libraries**
- `os`, `time`, `shutil`, `pyfiglet`, `colorama`, `platform`

### **Notebook to PDF Conversion**
- `selenium`

### **PDF Processing**
- `PyPDF2`, `reportlab`

---

## **Screenshots**
*Coming Soon!*

---

## **Contribution**
We welcome contributions!
Feel free to:
- **Submit a pull request.**
- **Open an issue** to suggest new features or improvements.

---

## **License**
This project is licensed under the **MIT License**.

---

## **Happy Processing! 🎉**