Skip to main content

A package for renewing and reposting posts on craigslist.com.

Project description

craigslist-reposter

Simple automation of craigslist listing renewal and reposting:

  • Selenium to access craigslist.com, IMAPClient package to authenticate login
  • User information is imported from environment variables
  • Pings an optional Discord webhook when reposts are completed

Installation

git clone https://github.com/PorkyC/craigslist-reposter.git
cd craigslist-reposter
pip install -r requirements.txt

Usage

  1. Set environment variables (e.g. for Windows)
SETX CL_USER craigslist_login@gmail.com
SETX CL_PASS craigslistpassword123
SETX CL_EMAIL_PASS gmailpassword123

# Optional: if using a webhook:
SETX DISCORD_WEBHOOK discord.com/webhook-address
  1. Change CLICK_TYPE in craigslist.py depending on whether script is running on Windows or Mac
# CLICK_TYPE configures which key is used to open the post in a new tab
CLICK_TYPE = Keys.COMMAND # Use this if you are on a Mac
CLICK_TYPE = Keys.CONTROL # Use this if you are on a PC
  1. Set maximum days a post can be active before reposting, and imap address in reposter.py
# MAX_POST_DAYS configures the maximum number of days after posting before reposting
MAX_POST_DAYS = 11

# IMAP_SERVER for email provider, default for gmail
IMAP_SERVER = 'imap.gmail.com'
  1. Run reposter.py (can also be scheduled, e.g. Launchd on MacOS) with arg[1]: max reposts allowed and arg[2]: max renewals allowed.
python3 reposter.py 3 8

TODO:

  • Improve repost process so that no additional configuration needed between MacOS and Windows
  • Save and reload Selenium browser session to reduce new logins and verifications Added 1/14/2023
  • Filter verification emails by subject

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

craigslist_reposter-0.2.2.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

craigslist_reposter-0.2.2-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file craigslist_reposter-0.2.2.tar.gz.

File metadata

  • Download URL: craigslist_reposter-0.2.2.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for craigslist_reposter-0.2.2.tar.gz
Algorithm Hash digest
SHA256 ce67d942dfe60997067916a1778779fa94757ba4228bc100f237bec513a466d1
MD5 f6590c637f9b421583ed47c9770b5ce5
BLAKE2b-256 4d013d596720142789548891299a171ca07c503673d2ba60b8ca2cd51677cdb9

See more details on using hashes here.

File details

Details for the file craigslist_reposter-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for craigslist_reposter-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9e48d27ef64bbaaea1e33ba40c942d9052138509daa5e51427951d2e4ddaaee2
MD5 f1b1a0253c5cc08d8a65c53b9eb4d157
BLAKE2b-256 a7d1285f03017035936fb3deeeb590c71a435922e81e12fcd45aa7ed243cfaa1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page