A web-based tool for running Moz DA and Spam score queries on a list of domains.
- Admin login with JWT authentication
- Upload Excel files containing a
domaincolumn - Background task execution using Moz API
- Download results as CSV
moz-web-tool/
├── backend/ # Python FastAPI backend
│ ├── main.py
│ ├── requirements.txt
│ ├── routes/
│ │ ├── auth.py # Login / JWT
│ │ └── tasks.py # Task CRUD, upload, download
│ ├── models/
│ │ └── task.py
│ ├── tool/
│ │ └── moz.py # Moz API wrapper
│ └── worker.py # Background task executor
└── frontend/ # React + TypeScript + Vite frontend
├── index.html
├── package.json
├── vite.config.ts
└── src/
├── App.tsx
├── services/api.ts
└── components/
├── LoginPage.tsx
└── TaskList.tsx
cp .env.example .env
# Edit .env and fill in your MOZ_ID, MOZ_KEY, and a strong JWT_SECRETcd backend
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
python main.pyThe backend will start on http://localhost:8000.
cd frontend
npm install
npm run devThe frontend will start on http://localhost:5173.
- Open
http://localhost:5173in your browser. - Log in with the credentials set in
.env(ADMIN_USERNAME/ADMIN_PASSWORD). - Upload an Excel file with a
domaincolumn. - Wait for the task to complete (status changes from
pending→running→done). - Click 下载 to download the result CSV.
Excel file with a domain column:
| domain |
|---|
| cryptocrowns.org |
| boringmagazine.net |
| emergingtechs.net |
CSV file with DA and Spam scores:
domain,target_da,target_spam
cryptocrowns.org,24,11
boringmagazine.net,19,2
emergingtechs.net,22,10