Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alishahbazi81/jobcrawler
Job crawler robot which finds jobs on job board platforms like LinkedIn, Glassdoor, and indeed based on their post time and send them to a telegram channel
https://github.com/alishahbazi81/jobcrawler
asp-net-core crawler jobs jobsearch telegram telegram-bot
Last synced: about 2 months ago
JSON representation
Job crawler robot which finds jobs on job board platforms like LinkedIn, Glassdoor, and indeed based on their post time and send them to a telegram channel
- Host: GitHub
- URL: https://github.com/alishahbazi81/jobcrawler
- Owner: AliShahbazi81
- Created: 2024-05-27T23:29:02.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2024-07-06T19:13:23.000Z (6 months ago)
- Last Synced: 2024-07-06T20:27:26.683Z (6 months ago)
- Topics: asp-net-core, crawler, jobs, jobsearch, telegram, telegram-bot
- Language: C#
- Homepage:
- Size: 85.9 KB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
JobCrawler
JobCrawler is a robust job searching bot designed to find and aggregate job postings from popular job board platforms such as LinkedIn, Glassdoor, and Indeed. It filters jobs based on their post time and sends them to a configured Telegram channel.
Features
-
Job Scraping: Retrieves job listings from LinkedIn, Glassdoor, and Indeed. -
Telegram Integration: Sends job details to a specified Telegram channel. -
Filtering: Filters jobs based on posting time to ensure the latest opportunities. -
Configurable: Easy configuration through application settings.
Technologies Used
-
.NET Core 8 WebAPI: The backend framework for building the API. -
Services and Interfaces: Modular design with services handling core functionalities. -
Telegram Bot API: Integration for sending messages to Telegram channels. -
Dependency Injection: Ensures scalable and maintainable code.
Installation
- Clone the repository:
git clone https://github.com/AliShahbazi81/JobCrawler.git
cd JobCrawler
- Create
appsettings.json
with your specific configurations, especially the Telegram API settings. - Restore the necessary packages:
dotnet restore
- Build the project:
dotnet build
Usage
- Run the application:
dotnet run
- Monitor the console output for logs indicating successful job scraping and Telegram message dispatches.
Configuration
Create an appsettings.json
file in the /JobCrawler/
directory alongside the file JobCrawler.csproj
with the following structure to configure your Telegram bot settings:
{
"Telegram": {
"ApiToken": "YOUR_TELEGRAM_BOT_TOKEN",
"ChannelId": "YOUR_TELEGRAM_CHANNEL_ID"
}
}
Project Structure
-
JobCrawler.Domain: Contains the domain entities and business logic. -
JobCrawler.Infrastructure.Crawler: Handles the job scraping functionalities. -
JobCrawler.Services.Crawler: Manages the interaction with job board platforms. -
JobCrawler.Services.TelegramAPI: Manages the Telegram Bot API integration.
Contributing
- Fork the repository.
- Create a new feature branch (
git checkout -b feature/AmazingFeature
). - Commit your changes (
git commit -m 'Add some AmazingFeature'
). - Push to the branch (
git push origin feature/AmazingFeature
). - Open a pull request.
License
This project is licensed under the MIT License. See the LICENSE
file for details.
Contact
For any questions or feedback, please contact Ali Shahbazi at [email protected] or open an issue on this repository.