{ "info": { "author": "", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Internet", "Topic :: System :: Networking" ], "description": "ezsocket\n========\n\nThe Python module 'ezsocket' provides an easy way to create client-side\nsockets for most common cases, with one simple function call.\n\nWith the release of Python 3.2/3.4, the Python Standard Library updated\nthe socket module and added a set of utility functions that made working\nwith sockets a lot easier. These changes also allow for a single unified\napproach to creating client-side sockets that will work in almost any case,\nand which has been implemented in this module.\n\n\nezsocket.create_socket\n----------------------\n\nCreates a client-side socket connected to the given service.\n\nThe following positional parameters are required:\n\n* **host** \n name of host (ex. 'google.com', 8.4.8.4, ...)\n* **port**\n port to connect to (ex. 8888, 'http', 'https', 'dns', ...)\n\nThe following non-positional parameters are optional:\n\n* **tls**\n enable TLS? (default: False)\n\nAn exception with base class **ezsocket.EzsocketException** might be thrown in\nthe following cases:\n\n* **ezsocket.ConnectionFailedException** might be thrown in any case\n* **ezsocket.TlsFailedException** might be thrown, if tls=True\n\n\nExample\n-------\n\n.. code:: python\n\n #!/usr/bin/env python\n # -*- coding: utf-8 -*-\n \"\"\"\n example.py\n\n Simple client that connects to https://python.org, sends a HTTP request,\n and prints the response. The magic happens in the \"connect\"-method.\n\n \"\"\"\n\n\n import ezsocket as ezs\n\n\n class ExampleClient:\n\n def __init__(self):\n self.buffer_in = b\"\"\n\n def connect(self):\n try:\n self.socket = ezs.create_socket('www.python.org', 'https', tls=True)\n except ezs.EzsocketException as e:\n # do something with e, or raise e again\n raise e\n\n def send_request(self, msg):\n self.socket.send(msg)\n\n def wait_for_response(self):\n while len(self.buffer_in.split(b\"\\r\\n\\r\\n\", maxsplit=1)) < 2:\n self.buffer_in += self.socket.recv(1024)\n\n def get_next_response(self):\n (r, self.buffer_in) = self.buffer_in.split(b\"\\r\\n\\r\\n\", maxsplit=1)\n return r\n\n def close(self):\n if self.socket:\n self.socket.close()\n self.socket = None\n\n\n if __name__ == \"__main__\":\n client = ExampleClient()\n client.connect()\n client.send_request(\n b\"HEAD / HTTP/1.1\\r\\n\"\n b\"Host: www.python.org\\r\\n\"\n b\"\\r\\n\")\n client.wait_for_response()\n r = client.get_next_response()\n for line in r.split(b\"\\r\\n\"):\n print(line)\n client.close()\n\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/averr/ezsocket/", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "ezsocket", "package_url": "https://pypi.org/project/ezsocket/", "platform": "", "project_url": "https://pypi.org/project/ezsocket/", "project_urls": { "Homepage": "https://bitbucket.org/averr/ezsocket/" }, "release_url": "https://pypi.org/project/ezsocket/0.2.2/", "requires_dist": null, "requires_python": "", "summary": "Easy creation of client-side sockets.", "version": "0.2.2" }, "last_serial": 3416495, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "f3ec8b6b8e00e58512bc56e31098498f", "sha256": "e7869dbf6109e0190f321d0965a45e273d5e698086643b1cb2916c4df2a49cfa" }, "downloads": -1, "filename": "ezsocket-0.1.0.tar.gz", "has_sig": false, "md5_digest": "f3ec8b6b8e00e58512bc56e31098498f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2562, "upload_time": "2017-12-13T21:31:38", "url": "https://files.pythonhosted.org/packages/f7/b4/dae683a7d90ef3a75e68f8b7727ce4b06f19d4fb9afa35b1068f15b37fe1/ezsocket-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "6a704a749de5289f40afd44964239d16", "sha256": "bf4bf66c1c4101c1c338c89c5d2d2b38f45a0fc9715d6cfbb60b29afca34e307" }, "downloads": -1, "filename": "ezsocket-0.1.1.tar.gz", "has_sig": false, "md5_digest": "6a704a749de5289f40afd44964239d16", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3001, "upload_time": "2017-12-13T22:47:55", "url": "https://files.pythonhosted.org/packages/58/b1/0d213355288480ea9029be4951acf2a62d15791f4d2eee9bc1bbf589e9e7/ezsocket-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "68e3e360e83bb80b10fd259c0d92cdbc", "sha256": "3c65b780215f777fb90f35d89caaac6d44ece33254b9a279b780c2d15c06bb31" }, "downloads": -1, "filename": "ezsocket-0.1.2.tar.gz", "has_sig": false, "md5_digest": "68e3e360e83bb80b10fd259c0d92cdbc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3153, "upload_time": "2017-12-13T23:07:31", "url": "https://files.pythonhosted.org/packages/11/06/0a93514edad9545c69d68da147a612c429af84a74e34c7be8b87fbe0b69e/ezsocket-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "41a03a9ab3294621292fdfc2cca3a0ee", "sha256": "9be1d3ed78af1dbb1c1ab27a5571be93aefb56a6a5ba5fb693269eee7ae0fb0a" }, "downloads": -1, "filename": "ezsocket-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "41a03a9ab3294621292fdfc2cca3a0ee", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4894, "upload_time": "2017-12-14T07:22:02", "url": "https://files.pythonhosted.org/packages/51/1a/407f94b5e432d5cc983cef638ee4b18ac13a982ffa389023490b6fa22925/ezsocket-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bc8411db6fb672dd84bbded88349453d", "sha256": "e374bd319906a5df919fbf937040ca1415bfb1fb470b6d3afca0901eca965749" }, "downloads": -1, "filename": "ezsocket-0.1.3.tar.gz", "has_sig": false, "md5_digest": "bc8411db6fb672dd84bbded88349453d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3402, "upload_time": "2017-12-14T07:22:03", "url": "https://files.pythonhosted.org/packages/24/f9/1daf823db80f734cea2b2fbbab6c54fb3249ac771c322697aed1844d98e5/ezsocket-0.1.3.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "1f5d57912fa19e76ae0bb283d8e83133", "sha256": "351a9ab0665b0da31c378e316036cd733d25267550abb758048ef9023e87ab43" }, "downloads": -1, "filename": "ezsocket-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1f5d57912fa19e76ae0bb283d8e83133", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6273, "upload_time": "2017-12-14T11:28:57", "url": "https://files.pythonhosted.org/packages/5b/f9/3d8dfe1f54392c6d666a90e979a5380d863bb958726864275596b0f6ac8b/ezsocket-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "82ca72f27cf3d913225cf57175cfa742", "sha256": "01613fc49769e53a8b4e8523c32d7383f4799d0a57c0cdefb54178efa1e07828" }, "downloads": -1, "filename": "ezsocket-0.2.1.tar.gz", "has_sig": false, "md5_digest": "82ca72f27cf3d913225cf57175cfa742", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4223, "upload_time": "2017-12-14T11:28:58", "url": "https://files.pythonhosted.org/packages/37/43/015c001633dc88a8ca38235b365bb2cbbfc1d385e91afde975d153a1f764/ezsocket-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "f2e830dcc081a7e23ac7fb5991387af5", "sha256": "566f0b90637ebf8abd817f043432b5261c5bf9d01155264c1e4ccf4240350451" }, "downloads": -1, "filename": "ezsocket-0.2.2-py2-none-any.whl", "has_sig": false, "md5_digest": "f2e830dcc081a7e23ac7fb5991387af5", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 5983, "upload_time": "2017-12-14T12:26:11", "url": "https://files.pythonhosted.org/packages/9c/94/826882bbe07cb14d87857ac1eda9d7f9a9c75f359ce16b3b557c3d9f6ad1/ezsocket-0.2.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "43915ba7604228d9491318d54c156d60", "sha256": "235d6fdd80079f95430b769ae59f708e6416231d6869f1273d9a88795bc9269c" }, "downloads": -1, "filename": "ezsocket-0.2.2.tar.gz", "has_sig": false, "md5_digest": "43915ba7604228d9491318d54c156d60", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4235, "upload_time": "2017-12-14T12:26:13", "url": "https://files.pythonhosted.org/packages/a0/30/9f6f78ad7e0e89969146a210859b6dfbcc121b2292a6750b48cb10785501/ezsocket-0.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f2e830dcc081a7e23ac7fb5991387af5", "sha256": "566f0b90637ebf8abd817f043432b5261c5bf9d01155264c1e4ccf4240350451" }, "downloads": -1, "filename": "ezsocket-0.2.2-py2-none-any.whl", "has_sig": false, "md5_digest": "f2e830dcc081a7e23ac7fb5991387af5", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 5983, "upload_time": "2017-12-14T12:26:11", "url": "https://files.pythonhosted.org/packages/9c/94/826882bbe07cb14d87857ac1eda9d7f9a9c75f359ce16b3b557c3d9f6ad1/ezsocket-0.2.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "43915ba7604228d9491318d54c156d60", "sha256": "235d6fdd80079f95430b769ae59f708e6416231d6869f1273d9a88795bc9269c" }, "downloads": -1, "filename": "ezsocket-0.2.2.tar.gz", "has_sig": false, "md5_digest": "43915ba7604228d9491318d54c156d60", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4235, "upload_time": "2017-12-14T12:26:13", "url": "https://files.pythonhosted.org/packages/a0/30/9f6f78ad7e0e89969146a210859b6dfbcc121b2292a6750b48cb10785501/ezsocket-0.2.2.tar.gz" } ] }