The e-samarth web portal marks entry assistant. Teachers have excel sheet of seat number and marks which needs to be entered on the portal.
- The Teacher opens this app and loads the excel sheet with seat number and marks.
- The the Teachers clicks a button in the app to open chrome browser with debugging
- The teachers logs in and reaches the page where the data entry is to be done.
- The teacher clicks the button to select the table where data entry is to be performed
- The teacher sets
Seat Column Index in Portal(default3) andMarks Column Index in Portal(default5) - Then clicks the Start button on the app to starts data entry
- Progress bar show the status
- The app has a tabular list of data imported from the excel and an additional column with the status of the data entry like PENDING, DONE, NOT FOUND
Please check the sample_data folder for sample forms and screenshot of the table. The third column is the Exam Roll Number which is the Seat Number of the student. The fifth column is where the marks are to be entered and a check box is to be pressed and then save button is to be pressed for every student.
Build a Python GUI app with Playwright.
- GUI: PyQt6
- Automation: Playwright (Chromium)
- Data import: pandas + openpyxl
- Install dependencies:
pip install -r requirements.txt
- Optional: install Playwright browser (only needed if installed Google Chrome is unavailable):
playwright install chromium
- Start the app:
python app.py
- Create and activate
.venvif not already done. - Install app dependencies:
pip install -r requirements.txt
- Install PyInstaller:
pip install pyinstaller
- Add an icon file named
app.icoin the project root. - Run this command from the project root:
pyinstaller --noconfirm --clean --onefile --windowed --name "E-Samarth-Marks-Entry-Assistant" --icon "icon.ico" --hidden-import playwright.sync_api app.pyGenerated executable:
dist\E-Samarth-Marks-Entry-Assistant.exe
Notes:
- The packaged app still prefers installed Google Chrome on the target machine.
- If Chrome is not installed on that machine, install Playwright Chromium separately or update the app to use a bundled browser.
- The one-file build starts slower on first launch because PyInstaller extracts bundled files to a temporary directory.
- Click
Browseand select your Excel/CSV. - Click
Load Data, then choose seat number and marks columns. - Click
Open Chromium (Debug)and login to the e-samarth portal. - Navigate to the marks entry page.
- Click
Select Table, then click the marks table in the portal. - Keep
Seat Column Index in Portalas3unless your page layout differs. - Keep
Marks Column Index in Portalas5unless your page layout differs. - Click
Start Entry.
The app updates each row with PENDING, DONE, NOT FOUND, or ERROR and shows progress.