{"id":20851210,"url":"https://github.com/elementbound/autopoet","last_synced_at":"2026-04-20T22:31:15.164Z","repository":{"id":71330404,"uuid":"88440373","full_name":"elementbound/autopoet","owner":"elementbound","description":"Autocorrect, now with poetry!","archived":false,"fork":false,"pushed_at":"2017-04-27T20:23:06.000Z","size":294,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-12-28T11:09:41.727Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/elementbound.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-04-16T20:20:20.000Z","updated_at":"2017-04-16T20:21:04.000Z","dependencies_parsed_at":"2023-03-12T16:31:16.344Z","dependency_job_id":null,"html_url":"https://github.com/elementbound/autopoet","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/elementbound/autopoet","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elementbound%2Fautopoet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elementbound%2Fautopoet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elementbound%2Fautopoet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elementbound%2Fautopoet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/elementbound","download_url":"https://codeload.github.com/elementbound/autopoet/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elementbound%2Fautopoet/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32068479,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T21:26:33.338Z","status":"ssl_error","status_checked_at":"2026-04-20T21:26:22.081Z","response_time":94,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2024-11-18T03:12:49.455Z","updated_at":"2026-04-20T22:31:15.159Z","avatar_url":"https://github.com/elementbound.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Autopoet #\n\n*Autocorrect, now with poetry!*\n\nAutopoet is in part a series of web crawler classes that crawl certain sites for freely available\nliterature, grouped by author. Since literature might come from different sites, multiple types\nof crawler classes are available.  \nSee ``autopoet.poetcrawler``.\n\nThe second step is to 'read' all the accumulated text, and try to give reasonable guesses about\nwhich word follows which. This is done by creating a graph from unique words. The graph's edges\n( or, as the source alls it, links ) are built from word-pair occurences in the input text.\nThese edges also have weights - for more common word-pairs, the links are stronger.  \nSee ``autopoet.graph`` and ``autopoet.graphutils``.\n\nThe third stage is to present this as a user interface. This is done by running a small web\nserver with Flask on the user's machine. The website uses AJAX to load data from the server.\nAs the user is typing, the server is constantly queried for suggestions on what the next word\ncould be. To make this process a bit more performant, graphs are cached for each author. There\nis certainly room for improvement here.  \nSee the ``site`` directory.\n\n## Dependencies ##\n\nThe only dependency is [Flask](http://flask.pocoo.org/). You can get it through pip:\n\n``pip install flask``\n\n## Running ##\n\n### Live demo ###\n\nIf you just want to see Autopoet in action, try [this](http://elementbound.pythonanywhere.com/).\n\nHosted by [pythonanywhere](https://www.pythonanywhere.com).\n\n### Demos ###\n\nAutopoet includes a few demos to show off each stage. The demos can be run by executing\nthe autopoet module:\n\n```\n$ py autopoet\nusage: autopoet [-h] [-p {kosztolányi,radnóti,petőfi,örkény,tóth}]\n                {wordstats,autosuggest}\nautopoet: error: the following arguments are required: demo\n```\n\n**Windows users:** Before running, make sure to set your codepage to Unicode (65001), otherwise\nsome demos can and will crash. The code will warn about it, and try to set the codepage, but\nit is still prone to crashing. Just exit and run the demo again.\n\n### Site ###\n\nThe site is a Flask app, so if you know how to run that, you are set.\n\nHowever, it can also be run through the script itself. From the site's directory, say:\n\n```\n$ py main.py run\nFLASK_APP = D:\\dev\\python\\autopoet\\site\\main.py\n * Serving Flask app \"main\"\n * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)\n```\n\n## Language ##\n\nCurrently, only a few Hungarian authors are included. Attempts have been made to include English\nliterature too, but I have failed to find some easy to crawl sources. All suggestions are welcome!\n\n## License ##\n\nAutopoet is licensed under the GNU GPL v3 license. See [LICENSE](LICENSE) for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felementbound%2Fautopoet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Felementbound%2Fautopoet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felementbound%2Fautopoet/lists"}