This Python3 script will monitor Upwork RSS feed and then email you the results.
This Python3 script will monitor Upwork RSS feed, filter out listings based on client budget/keywords, and then email you the results.
- Python3
- requests
- bs4 (BeautifulSoup)
- lxml
- ssl
- smtplib
- email.message
- Parses Upwork RSS feed every N seconds
- Filters out listings that don't meet the desired minimum budget
- Filters out listings that don't contain at least one specific keyword
- Emails you the results (if there are any)
download/clone repo
Login to Upwork, navigate to the job search page within the category of your choice. In my case it was "Web, Mobile, & Software Development". Make sure the results are sorted by "newest". Then click on the icon that looks like a green wifi logo. Right click on RSS, then copy the URL.
If you want email sending capabilities, first create a new Gmail account. Then go into the account settings and enable "less secure apps".
After creating your email account for sending emails, open upwork-rss-parser.py and edit the following values:
KEYWORDS = ["website", "wordpress", "react", "javascript", "landing", "elementor"] #keywords to look for in title/description
MINIMUM_BUDGET = 250 #Minimum budget to search for in dollars
RSS_URL = "https://www.upwork.com" #Upwork RSS URL that you gathered earlier
TO_EMAIL = "[email protected]" #Email address that you want to receive the notifications on
FROM_EMAIL = "[email protected]" #Email address that you created on Gmail with less secure apps enabled
SLEEP_TIME = 250 #Time to sleep between Upwork RSS HTTP GET requests
run pip3 install -r requirements.txt
in project root directory
run python3 upwork-rss-parser.py
in project root directory
in progress
- Resend email on failure
- More RSS feeds?
- ...
- Many thanks to Sergii, Chris, Swapna, Aras, Brock, Ibrahim, Ali, Sandra, Abhishek, my cat, Mozart, Monster Energy
Created by Chris☕ @chrmc - feel free to contact me!