A Sundai Club Project
Craigslist Watcher is a Python-based web scraper that monitors Craigslist for new listings matching specified search criteria. When new items are posted, the application sends out SMS notifications to the specified phone numbers using the Twilio API.
- Monitor specific Craigslist search URLs for new postings.
- Send SMS notifications when new items are found.
- Web interface for adding and managing search URLs and phone numbers.
- Integrated with Twilio for messaging and Flask for web server capabilities.
-
Navigate to the Project Directory:
cd main_micro_server
-
Create a
.env
File:Add your Twilio credentials to a new
.env
file:TWILIO_TOKEN=[your twilio api token] TWILIO_SID=[your twilio account id]
-
Create a Virtual Environment and Install Requirements:
python3 -m venv venv source venv/bin/activate pip install -r requirements.txt
-
Run the Application:
python main.py
-
Navigate to the Project Directory:
cd main_micro_server
-
Create a
.env
File:Add your Twilio credentials to a new
.env
file:TWILIO_TOKEN=[your twilio api token] TWILIO_SID=[your twilio account id]
-
Initialize Google Cloud SDK:
Follow the prompts to set up your Google Cloud environment:
gcloud init
-
Deploy to Google Cloud Run:
gcloud run deploy --source .
Create an account at console.twilio.com. Initially, you'll just be able to send messages to a single phone number. After verification, that expands. Add the following to .env at the top level of the folder:
- TWILIO_TOKEN=[your twilio api token]
- TWILIO_SID=[your twilio account id]
- Add an endpoint for Twilio, so when a user unsubscribes from Twilio they're also removed from our DB