-
-
Notifications
You must be signed in to change notification settings - Fork 0
Home
2MuchCoff33 edited this page Jan 9, 2026
·
6 revisions
Welcome! This wiki is written in plain language for everyone. You don’t need to know how to code. Just follow the step-by-step guides, diagrams, and glossary to get started quickly.
Procedure RunElvis()
Begin
Read seed URLs from srv/urls.txt
For each URL:
Fetch job listings
Extract company and location using SED/AWK
Deduplicate and validate results
Write output to home/calllist.txt
If --append-history is set:
Append new companies to history
End If
End
End Procedure
Caption: At-a-glance flow showing the main pipeline from seeds to home/calllist.txt.
flowchart TD
A[Start] --> B[Read seed URLs]
B --> C[Fetch job listings]
C --> D[Extract company/location]
D --> E[Deduplicate & validate]
E --> F[Write calllist.txt]
F --> G{Append history?}
G -- Yes --> H[Update company_history.txt]
G -- No --> I[Done]
Procedure ValidateCallList()
Begin
If home/calllist.txt does not exist or is empty then
Log error and exit
End If
For each row in calllist.txt:
Check format and required fields
If invalid, log error
End For
If all rows valid then
Print "Validation successful"
Else
Print "Validation failed"
End If
End
End Procedure
@startuml
actor User
User -> Elvis: Run elvis.sh
Elvis -> DataInput: Fetch & extract
DataInput -> Processor: Normalize & dedupe
Processor -> Validator: Validate output
Validator -> User: calllist.txt
@endumlWelcome to the Elvis project wiki!
This wiki is your beginner-friendly guide to using, configuring, and understanding Elvis, the POSIX shell-based web scraper for Australian sales lead call lists.
- Tutorials: Step-by-step guides for newcomers
- How-to Guides: Practical instructions for common tasks
- Reference: Technical details, configuration, and file structure
- Explanation: Background, design, and rationale
- Project Overview
- Directory & File Structure
- Step-by-Step Workflow
- FAQ
- Glossary
Tip: All wiki pages are written for non-technical users. If you’re new, start with the Tutorials!
- Pseudocode (PDL): For any procedural or algorithmic explanation, include a short PDL-style pseudocode block immediately after the explanatory paragraph. Follow Cal Poly PDL Standard.
-
Diagrams: Use PlantUML for UML-style diagrams (class, sequence) and Mermaid for flowcharts. Embed diagrams in fenced code blocks (
plantuml/mermaid). - Tone & mobile-first: Keep language simple and accessible to non-technical readers; prefer short paragraphs and visuals to explain steps.
Use the navigation above to get started!