{"id":23032301,"url":"https://github.com/michaelfromyeg/pylink","last_synced_at":"2025-10-10T13:02:39.948Z","repository":{"id":50165177,"uuid":"277903879","full_name":"michaelfromyeg/pylink","owner":"michaelfromyeg","description":"Automating more stuff at work because I'm lazy. This time it's URL testing. Gets CSV data, tests links, formats response codes in output file.","archived":false,"fork":false,"pushed_at":"2024-07-06T00:32:50.000Z","size":77,"stargazers_count":2,"open_issues_count":3,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-08T12:13:53.481Z","etag":null,"topics":["python","requests","testing","ubc"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/michaelfromyeg.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":"2020-07-07T19:24:14.000Z","updated_at":"2024-04-26T18:35:20.000Z","dependencies_parsed_at":"2023-02-09T10:01:34.480Z","dependency_job_id":"325189f0-6c06-4fe4-8a21-a242f91c854d","html_url":"https://github.com/michaelfromyeg/pylink","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaelfromyeg%2Fpylink","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaelfromyeg%2Fpylink/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaelfromyeg%2Fpylink/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaelfromyeg%2Fpylink/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/michaelfromyeg","download_url":"https://codeload.github.com/michaelfromyeg/pylink/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246899625,"owners_count":20851893,"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":["python","requests","testing","ubc"],"created_at":"2024-12-15T15:51:55.333Z","updated_at":"2025-10-10T13:02:34.893Z","avatar_url":"https://github.com/michaelfromyeg.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pylink\n\nAnother Python project to automate stuff I'm too lazy to do by hand. Take a list of URLs, and generate a report of their status (tailored to UBC ECE).\n\n[![made-with-python](https://img.shields.io/badge/Made%20with-Python-1f425f.svg)](https://www.python.org/) \n\n[![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)](https://lbesson.mit-license.org/)\n\n## Requirements\n\n- Python\n- Data, in the form a csv file\n\nExample CSV data:\n\n```csv\nWebsite\nhttps://ece.ubc.ca/~fvogt/\nhttps://ece.ubc.ca/~ivanov/\n```\n\nVirtual environment quickstart (for Windows):\n\n```bash\npip install virtualenv\nvirtualenv env\nsource ./env/Scripts/active\npip install -r requirements.txt\npip freeze \u003e requirements.txt\n```\n\n## Usage\n\nRun `python link.py -i \u003cinput file\u003e -o \u003coutput file\u003e`, where 'input file' is the name of a CSV file containing URLs under ece.ubc.ca.\n\n### Example\n\nHere's an example console call:\n\n`cd ./src \u0026\u0026 python link.py -i two.csv -o test.csv`\n\nAnd here's an example of the program's output (as a Markdown table):\n\n|Origin|Result                       |Status|\n|------|-----------------------------|------|\n|https://ece.ubc.ca/~fvogt/|403 @ https://ece.ubc.ca/~fvogt/|Site is secured; I don't have access|\n|https://ece.ubc.ca/~ivanov/|302 @ https://ece.ubc.ca/~ivanov/; and finally 200 @ https://ece.ubc.ca/faculty/andre-ivanov|Site redirects to ece.ubc.ca|\n|https://ece.ubc.ca/~dany/|200 @ https://ece.ubc.ca/~dany/|Site is hosted here|\n|https://ece.ubc.ca/~faizalk/|200 @ https://ece.ubc.ca/~faizalk/|Site is hosted here|\n|https://ece.ubc.ca/~farzadk/|200 @ https://ece.ubc.ca/~farzadk/|Site is hosted here|\n|https://ece.ubc.ca/~jamesc/|200 @ https://ece.ubc.ca/~jamesc/|Site is hosted here|\n|https://ece.ubc.ca/~lyon/|200 @ https://ece.ubc.ca/~lyon/|Site is hosted here|\n|https://ece.ubc.ca/~mkarimib/|200 @ https://ece.ubc.ca/~mkarimib/|Site is hosted here|\n|https://ece.ubc.ca/~rfoist/|200 @ https://ece.ubc.ca/~rfoist/|Site is hosted here|\n\nAs CSV:\n\n```csv\nOrigin,Result,Status\nhttps://ece.ubc.ca/~fvogt/,403 @ https://ece.ubc.ca/~fvogt/,Site is secured; I don't have access\nhttps://ece.ubc.ca/~ivanov/,302 @ https://ece.ubc.ca/~ivanov/; and finally 200 @ https://ece.ubc.ca/faculty/andre-ivanov,Site redirects to ece.ubc.ca\nhttps://ece.ubc.ca/~dany/,200 @ https://ece.ubc.ca/~dany/,Site is hosted here\nhttps://ece.ubc.ca/~faizalk/,200 @ https://ece.ubc.ca/~faizalk/,Site is hosted here\nhttps://ece.ubc.ca/~farzadk/,200 @ https://ece.ubc.ca/~farzadk/,Site is hosted here\nhttps://ece.ubc.ca/~jamesc/,200 @ https://ece.ubc.ca/~jamesc/,Site is hosted here\nhttps://ece.ubc.ca/~lyon/,200 @ https://ece.ubc.ca/~lyon/,Site is hosted here\nhttps://ece.ubc.ca/~mkarimib/,200 @ https://ece.ubc.ca/~mkarimib/,Site is hosted here\nhttps://ece.ubc.ca/~rfoist/,200 @ https://ece.ubc.ca/~rfoist/,Site is hosted here\n```\n\nAnd finally, formatted in Excel:\n\n![Formatted output](images/output.png)\n\n## Future\n\nHandle status codes better.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichaelfromyeg%2Fpylink","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmichaelfromyeg%2Fpylink","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichaelfromyeg%2Fpylink/lists"}