This Python3 script will monitor Upwork RSS feed and then email you the results.

Overview

Upwork RSS Parser

This Python3 script will monitor Upwork RSS feed and then email you the results.

Table of Contents

General Information

This Python3 script will monitor Upwork RSS feed, filter out listings based on client budget/keywords, and then email you the results.

Technologies Used

  • Python3
  • requests
  • bs4 (BeautifulSoup)
  • lxml
  • ssl
  • smtplib
  • email.message

Features

  • 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)

Screenshots

screenshot

Setup

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.

upwork

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

Project Status

in progress

TODO

  • Resend email on failure
  • More RSS feeds?
  • ...

Acknowledgements

  • Many thanks to Sergii, Chris, Swapna, Aras, Brock, Ibrahim, Ali, Sandra, Abhishek, my cat, Mozart, Monster Energy

Contact

Created by Chris @chrmc - feel free to contact me!

Owner
Chris
Front-end Web Developer 💻 I love to solve problems, think creatively, write code, and learn new things.
Chris
Binary++ is an esoteric programming language based on* binary

Binary++ is an esoteric programming language based on* binary. * It's meant to be based on binary, but you can write Binary++ code using different mea

Supercolbat 3 Feb 18, 2022
This repository contains Python Projects for Beginners as well as for Intermediate Developers built by Contributors.

Python Projects {Open Source} Introduction The repository was built with a tree-like structure in mind, it contains collections of Python Projects. Mo

Gaurav Pandey 115 Apr 30, 2022
Python module to work with Magneto Database directly without using broken Magento 2 core

Python module to work with Magneto Database directly without using broken Magento 2 core

Egor Shitikov 13 Nov 10, 2022
Automated, progress quest-inspired procedural adventuring

Tales of an Endless Journey (TEJ) Automated, progress quest-inspired procedural adventuring What is this project? Journey is the result of many, many

8 Dec 14, 2021
Automatically remove user join messages when the user leaves the server.

CleanLeave Automatically remove user join messages when the user leaves the server. Installation You will need to install poetry to run this bot local

11 Sep 19, 2022
Runtime Type Checking in Python 3

typo This package intends to provide run-time type checking for functions annotated with argument type hints (standard library typing module in Python

Ivan Smirnov 26 Dec 13, 2022
SQL centered, docker process running game

REQUIREMENTS Linux Docker Python/bash set up image "docker build -t game ." create db container "run my_whatever/game_docker/pdb create" # creating po

1 Jan 11, 2022
This is where I learn machine learning

This is where I learn machine learning🤷‍ This means that this repo covers no specific topic of machine learning or a project - I work in here when I want to learn/try something

Wilhelm Berghammer 47 Nov 16, 2022
A(Sync) Interface for internal Audible API written in pure Python.

Audible Audible is a Python low-level interface to communicate with the non-publicly Audible API. It enables Python developers to create there own Aud

mkb79 192 Jan 03, 2023
An implementation of Ray Tracing in One Weekend using Taichi

又一个Taichi语言的Ray Tracer 背景简介 这个Ray Tracer基本上是照搬了Peter Shirley的第一本小书Ray Tracing in One Weekend,在我写的时候参考的是Version 3.2.3这个版本。应该比其他中文博客删改了不少内容。果然Peter Shir

张皓 30 Nov 21, 2022
My qtile config with a fresh-looking bar and pywal support

QtileConfig My qtile config with a fresh-looking bar and pywal support. Note: This is my first rice and first github repo. Please excuse my poor codin

Eden 4 Nov 10, 2021
Manually Install Python 2.7 pip without any problem !

Python2.7_install_pip Manually Install Python 2.7 pip without any problem ! Download installPip.py to your system and Run the code using this Command

Ali Jafari 1 Dec 09, 2021
A basic interpreted programming language written in python

shin A basic interpreted programming language written in python. extension You can use our own extension ".shin". Example: main.shin How to start Clon

12 Nov 04, 2022
A python script for osu!lazer rulesets auto update.

osu-lazer-rulesets-autoupdater A python script for osu!lazer rulesets auto update. How to use: 如何使用: You can refer to the python script. The begining

3 Jul 26, 2022
Decoupled Smoothing in Probabilistic Soft Logic

Decoupled Smoothing in Probabilistic Soft Logic Experiments for "Decoupled Smoothing in Probabilistic Soft Logic". Probabilistic Soft Logic Probabilis

Kushal Shingote 1 Feb 08, 2022
LTGen provides classic algorithms used in Language Theory.

LTGen LTGen stands for Language Theory GENerator and provides tools to implement language theory. Command Line LTGen is a collection of tools to imple

Hugues Cassé 1 Jan 07, 2022
Python script that automates the tasks involved in starting a new coding project

Auto Project Builder Automates the repetitive tasks while starting a new project Installation Use the REQUIREMENTS.txt file to install the dependencie

Prathap S S 1 Feb 03, 2022
This repository containing cross-section cut and fill calculations using Python programming language.

cross-section This repository is containing cut and fill calculations for cross-section using Python programming language. This codes is made to calcu

3 Jun 15, 2022
Code and data for learning to search in local branching

Code and data for learning to search in local branching

Defeng Liu 7 Dec 06, 2022
Tools for analyzing Java JVM gc log files

gc_log This package consists of two separate utilities useful for : gc_log_visualizer.py regionsize.py GC Log Visualizer This was updated to run under

Brad Schoening 0 Jan 04, 2022