{"id":21542716,"url":"https://github.com/vinitshahdeo/jobtweets","last_synced_at":"2025-10-11T14:06:07.841Z","repository":{"id":46567829,"uuid":"90202263","full_name":"vinitshahdeo/jobtweets","owner":"vinitshahdeo","description":":mag: This project is about searching the twitter for job opportunities using popular hashtags and applying sentiment analysis on this. :hash: :bird:","archived":false,"fork":false,"pushed_at":"2024-08-12T18:46:48.000Z","size":1429,"stargazers_count":123,"open_issues_count":40,"forks_count":83,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-03T09:03:40.160Z","etag":null,"topics":["hashtag","job-opportunities","jobs","jobsearch","python","sentiment-analysis","textblob","tweepy","tweets","twitter","twitter-api","twitter-sentiment-analysis"],"latest_commit_sha":null,"homepage":"https://vinitshahdeo.github.io/jobtweets/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vinitshahdeo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-05-03T23:35:25.000Z","updated_at":"2025-02-11T14:03:43.000Z","dependencies_parsed_at":"2024-11-24T05:10:55.087Z","dependency_job_id":null,"html_url":"https://github.com/vinitshahdeo/jobtweets","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/vinitshahdeo/jobtweets","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vinitshahdeo%2Fjobtweets","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vinitshahdeo%2Fjobtweets/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vinitshahdeo%2Fjobtweets/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vinitshahdeo%2Fjobtweets/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vinitshahdeo","download_url":"https://codeload.github.com/vinitshahdeo/jobtweets/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vinitshahdeo%2Fjobtweets/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279007479,"owners_count":26084313,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-11T02:00:06.511Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hashtag","job-opportunities","jobs","jobsearch","python","sentiment-analysis","textblob","tweepy","tweets","twitter","twitter-api","twitter-sentiment-analysis"],"created_at":"2024-11-24T05:10:49.738Z","updated_at":"2025-10-11T14:06:07.812Z","avatar_url":"https://github.com/vinitshahdeo.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Job Opportunities using [Twitter](https://twitter.com/Vinit_Shahdeo)\n## Twitter Sentiment Analysis using Python\n\n[![Generic badge](https://img.shields.io/badge/Sentiment-Analysis-teal.svg?style=for-the-badge)](https://github.com/vinitshahdeo/jobtweets) \n[![Generic badge](https://img.shields.io/badge/Twitter-API-orange.svg?style=for-the-badge\u0026logo=twitter\u0026logoColor=white)](https://twitter.com/Vinit_Shahdeo) [![Generic badge](https://img.shields.io/badge/Job-Opportunities-blue.svg?style=for-the-badge)](https://github.com/vinitshahdeo/jobtweets/raw/master/report/REPORT.pdf) \n\n#### The project is about searching the twitter for job opportunities using popular [#hashtags](https://twitter.com/search?q=%23jobs\u0026src=typd) and applying sentiment analysis on this.\n\n[![GitHub repo size](https://img.shields.io/github/repo-size/vinitshahdeo/jobtweets.svg?logo=github\u0026style=social)](https://github.com/vinitshahdeo/) [![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/vinitshahdeo/jobtweets.svg?logo=git\u0026style=social)](https://github.com/vinitshahdeo/) [![GitHub top language](https://img.shields.io/github/languages/top/vinitshahdeo/jobtweets.svg?logo=python\u0026style=social)](https://github.com/vinitshahdeo/)\n\n#### Few popular [#hashtags](https://twitter.com/Vinit_Shahdeo)\n\n[![jobs](https://badgen.net/badge/%23/jobs?\u0026scale=1.3)](https://vinitshahdeo.github.io/jobtweets/) [![Careers](https://badgen.net/badge/%23/careers?\u0026scale=1.3)](https://vinitshahdeo.github.io/jobtweets/) [![JobOpening](https://badgen.net/badge/%23/JobOpening?\u0026scale=1.3)](https://vinitshahdeo.github.io/jobtweets/) \n\n[![FreshHiring](https://badgen.net/badge/%23/FreshHiring?\u0026scale=1.3)](https://vinitshahdeo.github.io/jobtweets/) [![Recruitments](https://badgen.net/badge/%23/Recruitments?\u0026scale=1.3)](https://vinitshahdeo.github.io/jobtweets/) [![JobOpportunities](https://badgen.net/badge/%23/JobOpportunities?\u0026scale=1.3)](https://vinitshahdeo.github.io/jobtweets/) \n\n\n### Motivation\n\nTwitter is all about enabling users to send out brief messages to large audiences. If you haven’t been taking advantage of Twitter as a job search tool, it’s time to jump in. When used intelligently, Twitter can have a profound impact on your job search success – or lack thereof. Small steps can help you turn Twitter into your own personal job search platform. Try them today and see what a difference they make in your overall job search success.\n\n### About the Project\n\n#### What is Sentiment Analysis?\n\nSentiment Analysis is the process of ‘computationally’ determining whether a piece of writing is positive, negative or neutral. It’s also known as opinion mining, deriving the opinion or attitude of a speaker.\n\n#### Steps involved in this project\n\n3 major steps in `jobtweets.py` code :\n\n1. Authorize twitter API client.\n2. Make a GET request to Twitter API to fetch tweets for a particular query.\n3. Parse the tweets. Classify each tweet as positive, negative or neutral.\n\n[![Made with Python](https://forthebadge.com/images/badges/made-with-python.svg)](https://github.com/vinitshahdeo/jobtweets) [![Made with love](https://forthebadge.com/images/badges/built-with-love.svg)](https://github.com/vinitshahdeo) [![Makes people smile](https://forthebadge.com/images/badges/makes-people-smile.svg)](https://github.com/vinitshahdeo)\n#### Explanation\n\n- First of all, I've created a **TwitterClient** class. This class contains all the methods to interact with Twitter API and parsing tweets. We use `__init__` function to handle the authentication of API client.\n\n- In **get_tweets** function, I have used `fetched_tweets = self.api.search(q = query, count = count)` to call the Twitter API to fetch tweets. 'query' is basically, the hashtags.\n\n- In **get_tweet_sentiment** I've used textblob module. \n`analysis = TextBlob(self.clean_tweet(tweet))`\n\n- **clean_tweet** method to remove links, special characters, etc. from the tweet using some simple regex.\n\n- I have used **sentiment.polarity** method of **TextBlob** class to get the polarity of tweet between -1 to 1.\n\n```python\nif analysis.sentiment.polarity \u003e 0:\n       return 'positive'\nelif analysis.sentiment.polarity == 0:\n       return 'neutral'\nelse:\n       return 'negative'\n```\n- Finally, I've printing the percentage of positive, negative and neutral tweets about a **#hashtag**(query).\n\n**Note** - You can change the hashtags by changing `query = 'WRITE YOUR OWN HASHTAG'`\n\n```python\ntweets = api.get_tweets(query = 'Job Opportunities', count = 500)\n```\n\n### Libraries Used\n\n[![tweepy](https://img.shields.io/badge/Python-Tweepy-blue.svg?style=flat\u0026logo=python\u0026logoColor=white)](http://docs.tweepy.org/en/v3.5.0/) [![textblob](https://img.shields.io/badge/Python-TextBlob-blue.svg?style=flat\u0026logo=python\u0026logoColor=white)](https://textblob.readthedocs.io/en/dev/)\n\n- [Tweepy](http://docs.tweepy.org/en/v3.5.0/) - **tweepy** is the python client for the official [Twitter API](https://developer.twitter.com/en/docs).\n- [TextBlob](https://textblob.readthedocs.io/en/dev/) - **textblob** is the python library for processing textual data.\n\n### Installation\n\n- Install **Tweepy** using pip command: `pip install tweepy`\n- Install **TextBlob** using pip command: `pip install textblob`\n\n### How to run?\n\n[![python](https://img.shields.io/badge/python-jobtweets.py-lightgrey.svg?logo=python\u0026style=social)](https://github.com/vinitshahdeo/jobtweets/)\n\n- Get started with **Twitter API** by signing up for [Twitter Developer Account](https://dev.twitter.com/apps).\n- In order to fetch tweets through **Twitter API**, you need to register an App through your twitter account. \n- Follow this [link](https://apps.twitter.com/) to register your app.\n- Get the API keys. Need help, follow this [link](https://themepacific.com/how-to-generate-api-key-consumer-token-access-key-for-twitter-oauth/994/)\n- Open `jobtweets.py` and replace '**XXXXXXXXXXXX**' with your API keys.\n\n```python\n\n        consumer_key = 'XXXXXXXXXXXX'\n        consumer_secret = 'XXXXXXXXXXXX'\n        access_token = 'XXXXXXXXXXXX'\n        access_token_secret = 'XXXXXXXXXXXX'\n\n```\n- Run `python jobtweets.py`\n- It may take a minute to fetch the results from **Twitter**. Make sure that you've proper internet connection.\n\n### Project Reports\n\n[![PPT](https://img.shields.io/static/v1.svg?label=Project\u0026message=PPT\u0026logo=microsoft-powerpoint\u0026style=social)](https://github.com/vinitshahdeo/jobtweets/raw/master/report/presentation.pptx) [![report](https://img.shields.io/static/v1.svg?label=Project\u0026message=Report\u0026logo=microsoft-word\u0026style=social)](https://github.com/vinitshahdeo/jobtweets/raw/master/report/REPORT.pdf)\n\n- [Download](https://github.com/vinitshahdeo/jobtweets/raw/master/report/presentation.pptx) the presentation.\n- [Download](https://github.com/vinitshahdeo/jobtweets/raw/master/report/REPORT.pdf) project report.\n\n### Useful Links\n\n - [Getting started with Twitter Developer Platform](https://developer.twitter.com/en/docs/basics/getting-started)\n - [How to Install PIP for Python on Windows, Mac and Linux](https://www.makeuseof.com/tag/install-pip-for-python/)\n \n### Related Work\n\n[![Sentiment Analysis](https://img.shields.io/static/v1.svg?label=Sentiment\u0026message=Analysis\u0026color=lightgray\u0026logo=twitter\u0026style=social\u0026colorA=critical)](https://github.com/vinitshahdeo/TwitterSentimentAnalysis/) [![GitHub top language](https://img.shields.io/github/languages/top/vinitshahdeo/TwitterSentimentAnalysis.svg?logo=php\u0026style=social)](https://github.com/vinitshahdeo/)\n\n[Twitter Sentiment Analyzer](https://vinitshahdeo.github.io/TwitterSentimentAnalysis/) - A web app to search the keywords(Hashtags) on Twitter and analyze the sentiments of it. The source code is written in **PHP** and it performs Sentiment Analysis on Tweets by using the Datumbox API.\n\n\n### Contributing\n\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?logo=github)](https://github.com/vinitshahdeo/jobtweets/pulls) [![GitHub issues](https://img.shields.io/github/issues/vinitshahdeo/jobtweets?logo=github)](https://github.com/vinitshahdeo/jobtweets/issues) ![GitHub pull requests](https://img.shields.io/github/issues-pr/vinitshahdeo/jobtweets?color=blue\u0026logo=github) \n[![GitHub commit activity](https://img.shields.io/github/commit-activity/y/vinitshahdeo/jobtweets?logo=github)](https://github.com/vinitshahdeo/jobtweets/)\n\n- Clone [this](https://github.com/vinitshahdeo/jobtweets/) repository: \n\n```bash\ngit clone https://github.com/vinitshahdeo/jobtweets.git\n```\n\n- Check out any issue from [here](https://github.com/vinitshahdeo/jobtweets/issues).\n\n- Make changes and send [Pull Request](https://github.com/vinitshahdeo/jobtweets/pull).\n \n### Need help?\n\n[![Facebook](https://img.shields.io/static/v1.svg?label=follow\u0026message=@vinit.shahdeo\u0026color=9cf\u0026logo=facebook\u0026style=flat\u0026logoColor=white\u0026colorA=informational)](https://www.facebook.com/vinit.shahdeo)  [![Instagram](https://img.shields.io/static/v1.svg?label=follow\u0026message=@vinitshahdeo\u0026color=grey\u0026logo=instagram\u0026style=flat\u0026logoColor=white\u0026colorA=critical)](https://www.instagram.com/vinitshahdeo/) [![LinkedIn](https://img.shields.io/static/v1.svg?label=connect\u0026message=@vinitshahdeo\u0026color=success\u0026logo=linkedin\u0026style=flat\u0026logoColor=white\u0026colorA=blue)](https://www.linkedin.com/in/vinitshahdeo/)\n\n:email: Feel free to contact me @ [vinitshahdeo@gmail.com](https://mail.google.com/mail/)\n\n[![GMAIL](https://img.shields.io/static/v1.svg?label=send\u0026message=vinitshahdeo@gmail.com\u0026color=red\u0026logo=gmail\u0026style=social)](https://www.github.com/vinitshahdeo) [![Twitter Follow](https://img.shields.io/twitter/follow/Vinit_Shahdeo?style=social)](https://twitter.com/Vinit_Shahdeo)\n\n\n### License\n\n[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fvinitshahdeo%2Fjobtweets.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fvinitshahdeo%2Fjobtweets?ref=badge_large)\n\nMIT \u0026copy; [Vinit Shahdeo](https://github.com/vinitshahdeo/jobtweets/blob/master/LICENSE)\n\n### Author\n\n|                                                                                         \u003ca href=\"https://www.eatmy.news/2020/06/code-like-you-eat-i-mean-code-daily-as.html\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/vinitshahdeo/Water-Monitoring-System/master/assets/vinit-shahdeo.jpg\" width=\"150px \" height=\"150px\" /\u003e\u003c/a\u003e                                                                                         |\n| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |\n|                                                                                                                                        **[Vinit Shahdeo](https://fayz.in/stories/s/1522/0/?ckt_id=ZGL1ZGVk\u0026title=story_of_vinit_shahdeo)**                                                                                                                                        |\n| \u003ca href=\"https://twitter.com/Vinit_Shahdeo\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/vinitshahdeo/Water-Monitoring-System/master/assets/twitter.png\" width=\"32px\" height=\"32px\"\u003e\u003c/a\u003e \u003ca href=\"https://www.facebook.com/vinit.shahdeo\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/vinitshahdeo/Water-Monitoring-System/master/assets/facebook.png\" width=\"32px\" height=\"32px\"\u003e\u003c/a\u003e \u003ca href=\"https://www.linkedin.com/in/vinitshahdeo/\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/vinitshahdeo/Water-Monitoring-System/master/assets/linkedin.png\" width=\"32px\" height=\"32px\"\u003e\u003c/a\u003e |\n\n\n[![GitHub license](https://img.shields.io/github/license/vinitshahdeo/jobtweets.svg?style=social\u0026logo=github)](https://github.com/vinitshahdeo/jobtweets/blob/master/LICENSE) \n[![GitHub forks](https://img.shields.io/github/forks/vinitshahdeo/jobtweets.svg?style=social)](https://github.com/vinitshahdeo/jobtweets/network) [![GitHub stars](https://img.shields.io/github/stars/vinitshahdeo/jobtweets.svg?style=social)](https://github.com/vinitshahdeo/jobtweets/stargazers) [![GitHub followers](https://img.shields.io/github/followers/vinitshahdeo.svg?label=Follow\u0026style=social)](https://github.com/vinitshahdeo/)\n\n------\n\n\u003cp align=\"center\"\u003e\u003cstrong\u003e\u003csup\u003e:hugs: \u003cbr\u003eCheck out my other projects \u003ca href=\"./PROJECTS.md\"\u003ehere\u003c/a\u003e!\u003c/sup\u003e\u003c/strong\u003e\u003c/p\u003e\n\n------\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvinitshahdeo%2Fjobtweets","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvinitshahdeo%2Fjobtweets","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvinitshahdeo%2Fjobtweets/lists"}