{"id":23647669,"url":"https://github.com/toughyear/producthunt-scraper","last_synced_at":"2025-11-12T07:30:18.859Z","repository":{"id":170431217,"uuid":"583645732","full_name":"toughyear/producthunt-scraper","owner":"toughyear","description":"Basic scripts to scrape ProductHunt data and Analyze it","archived":false,"fork":false,"pushed_at":"2022-12-30T12:49:53.000Z","size":1070,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-12-28T14:39:46.424Z","etag":null,"topics":["producthunt","producthunt-api","scraping"],"latest_commit_sha":null,"homepage":"https://twitter.com/toughyear/status/1608787504764973056","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/toughyear.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":"2022-12-30T12:38:25.000Z","updated_at":"2023-06-08T09:57:31.000Z","dependencies_parsed_at":null,"dependency_job_id":"21617797-2140-437d-bcea-67f27a1470e4","html_url":"https://github.com/toughyear/producthunt-scraper","commit_stats":null,"previous_names":["toughyear/producthunt-scraper"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toughyear%2Fproducthunt-scraper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toughyear%2Fproducthunt-scraper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toughyear%2Fproducthunt-scraper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toughyear%2Fproducthunt-scraper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/toughyear","download_url":"https://codeload.github.com/toughyear/producthunt-scraper/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239599040,"owners_count":19665911,"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","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":["producthunt","producthunt-api","scraping"],"created_at":"2024-12-28T14:38:45.218Z","updated_at":"2025-11-12T07:30:18.584Z","avatar_url":"https://github.com/toughyear.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# producthunt-scraper 🕸\n\nSet of basic script python scripts to fetch data from [Product Hunt](https://www.producthunt.com/) and analyze it.\n\n## Fetching\n\nIn both the scripts - `product-fetcher.py` and `product-fetcher-async.py` you can edit -\n\n```py\n# start_date\n\nstart_date = {\n    \"year\": 2022,\n    \"month\": 1,\n    \"day\": 1,\n}\n\n# end_date\nend_date = {\n    \"year\": 2022,\n    \"month\": 1,\n    \"day\": 15,\n}\n\n\n```\n\nto change the date range for which you want to fetch the data.\n\nA sample run would look something like this -\n\n```terminal\npython product-fetcher.py                                                                             ─╯\n2022-01-01\n2022-01-02\n2022-01-03\n2022-01-04\n...\n2022-01-15\nTime taken to run the script: 5.975425720214844 seconds\n```\n\nAfter that, you can run the script using `python product-fetcher.py` or `python product-fetcher-async.py` depending on which script you want to run. This will crate a file `products.csv` in the same directory which will contain the data.\n\n## Analyzing\n\nOnce you have the data, you can run the `product-analyzer.py` script to analyze the data after setting correct path to the `products.csv` file in the script.\n\nThis script will output analysis in the terminal.\n\n```terminal\nProduct with highest votes: Fitmint with 6781 votes\nProduct with most comments: Via Protocol with 2257 comments\ntopic_name\nProductivity         2262\nAndroid               796\nDesign Tools          782\nWeb App               475\niOS                   338\nChrome Extensions     320\nDeveloper Tools       310\nMarketing             278\nFintech               242\nHealth \u0026 Fitness      198\n...(more analysis)\n```\n\n## Notes\n\n- These scripts were never meant to be published, so they might not be the best code. If you have any suggestions, feel free to open an issue or a PR.\n\n- this was used to create this twitter thread - [ProductHunt Recap 2022](https://twitter.com/toughyear/status/1608787504764973056)\n\nCiao! 🤙\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoughyear%2Fproducthunt-scraper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftoughyear%2Fproducthunt-scraper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoughyear%2Fproducthunt-scraper/lists"}