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
It is a Blender Tool which can convert the Object Data Attributes in face corner to the UVs or Vertex Color.

Blender_ObjectDataAttributesConvertTool It is a Blender Tool which can convert the Object Data Attributes in face corner to the UVs or Vertex Color. D

Takeshi Chō 2 Jan 08, 2022
WMIC Serial Checker For Python

WMIC Serial Checker Follow me here: Discord | Github FR: A but éducatif seulement. EN: For educational purposes only. ❓ Informations FR: WMIC Serial C

AkaTool's 0 Apr 25, 2022
This is the repo for Uncertainty Quantification 360 Toolkit.

UQ360 The Uncertainty Quantification 360 (UQ360) toolkit is an open-source Python package that provides a diverse set of algorithms to quantify uncert

International Business Machines 207 Dec 30, 2022
py2dis - A disassembly engine & library for Python

py2dis - A disassembly engine & library for Python. py2dis is a disassembly library for Python that does not use any modules/libraries other than colo

3 Feb 04, 2022
Быстрый локальный старт

Быстрый локальный старт

Anton Ogorodnikov 1 Sep 28, 2021
京东自动入会获取京豆

京东入会领京豆 要求 有一定的电脑知识 or 有耐心爱折腾 需要Chrome(推荐)、Edge(Chromium)、Firefox 操作系统需是Mac(本人没在m1上测试)、Linux(在deepin上测试过)、Windows 安装方法 脚本采用Selenium遍历京东入会有礼界面,由于遍历了200

Vanke Anton 500 Dec 22, 2022
Module to align code with thoughts of users and designers. Also magically handles navigation and permissions.

This readme will introduce you to Carteblanche and walk you through an example app, please refer to carteblanche-django-starter for the full example p

Eric Neuman 42 May 28, 2021
Backend Interview Challenge

Inspect HOA backend challenge This is a simple flask repository with some endpoints and requires a few more endpoints. It follows a simple MVP (model-

1 Jan 20, 2022
Schemdule is a tiny tool using script as schema to schedule one day and remind you to do something during a day.

Schemdule is a tiny tool using script as schema to schedule one day and remind you to do something during a day. Platform Python Install Use pip: pip

StardustDL 4 Sep 13, 2021
万能通用对象池,可以池化任意自定义类型的对象。

pip install universal_object_pool 此包能够将一切任意类型的python对象池化,是万能池,适用范围远大于单一用途的mysql连接池 http连接池等。 框架使用对象池包,自带实现了4个对象池。可以直接开箱用这四个对象池,也可以作为例子学习对象池用法。

12 Dec 15, 2022
OTP-Bomber - An otp from MPL ID app, which can be spammed

OTP-Bomber An otp from MPL ID app, which can be spammed Note: Only available on

5 Oct 29, 2022
Nook is a simple, concatenative programming language written in Python.

Nook Nook is a simple, concatenative programming language written in Python. Status Nook is currently WIP. It lacks a lot of basic feature, and will n

Wumi4 4 Jul 20, 2022
A Lynx that manages a group that puts the federation first.

Lynx Super Federation Management Group Lynx was created to manage your groups on telegram and focuses on the Lynx Federation. I made this to root out

Unknown 2 Nov 01, 2022
Just a little benchmark for scrapper PC's

PopMark Just a little benchmark for scrapper PC's This benchmark is for old computer that dont support other benchmark because of support. Like lack o

Garry 1 Nov 24, 2021
Time tracking program that will format output to be easily put into Gitlab

time_tracker Time tracking program that will format output to be easily put into Gitlab. Feel free to branch and use it yourself! Getting Started Clon

Jake Strasler 2 Oct 13, 2022
python scripts to perform coin die clustering (performed on Riedones3D).

python scripts to perform coin die clustering (performed on Riedones3D).

Sofiane 2 Apr 29, 2022
A reproduction repo for a Scheduling bug in AirFlow 2.2.3

A reproduction repo for a Scheduling bug in AirFlow 2.2.3

Ilya Strelnikov 1 Feb 09, 2022
Liquid Rocket Engine Cooling Simulation

Liquid Rocket Engine Cooling Simulation NASA CEA The implemented class calls NASA CEA via RocketCEA. INSTALL GUIDE In progress install instructions fo

John Salib 1 Jan 30, 2022
Pyjiting is a experimental Python-JIT compiler, which is the product of my undergraduate thesis

Pyjiting is a experimental Python-JIT compiler, which is the product of my undergraduate thesis. The goal is to implement a light-weight miniature general-purpose Python JIT compiler.

Lance.Moe 10 Apr 17, 2022
An extension for Arma 3 that lets you write extensions in Python 3

An Arma 3 extension that lets you to write python extensions for Arma 3. And it's really simple and straightforward to use!

Lukasz Taczuk 48 Dec 18, 2022