{ "info": { "author": "Junbum Lee", "author_email": "jun@beomi.net", "bugtrack_url": null, "classifiers": [], "description": "# KB \uad6d\ubbfc\uc740\ud589 \uacc4\uc88c \uc870\ud68c\n\n## \uc65c \ub9cc\ub4e4\uc5c8\ub098\uc694?\n\nKB\uad6d\ubbfc\uc740\ud589\uc5d0\uc11c \uc791\ub144 '\ube60\ub978\uc870\ud68c'\uc11c\ube44\uc2a4 \uc0ac\uc774\ud2b8\uac00 \ubcc0\uacbd\ub418\uc5b4 \uae30\uc874\uc5d0 Github\uc5d0 \ub3cc\uc544\ub2e4\ub2c8\ub358 \uc870\ud68c \ub3c4\uad6c\uac00 \ubb34\uc6a9\uc9c0\ubb3c\uc774 \ub418\uc5b4,\nSelenium\uc744 \uc0ac\uc6a9\ud55c \ud06c\ub864\ub9c1 \ub3c4\uad6c\ub97c \uac04\ub2e8\ud558\uac8c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4.\n\n## \uc81c\uc57d\n\n\ud604\uc7ac \uad6d\ubbfc\uc740\ud589\uc5d0\uc11c\ub294 \ud06c\ub86c\ub4f1\uc758 AX\uac00 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 \ube0c\ub77c\uc6b0\uc800\ub294 '\uac00\uc0c1\ud0a4\ubcf4\ub4dc'\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4.\nIE\uc5d0\uc11c\ub294 \uac00\uc0c1\ud0a4\ubcf4\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc9c0 \uc54a\uace0 Selenium\uc758 `send_keys` \uba54\uc18c\ub4dc\ub97c \uc0ac\uc6a9\ud574 \uc785\ub825\uc744 \ubc1b\uae30 \ub54c\ubb38\uc5d0 \uae30\uc874 \ucf54\ub4dc \uadf8\ub300\ub85c \uc0ac\uc6a9\uc774 \uac00\ub2a5\ud569\ub2c8\ub2e4.\n\ud558\uc9c0\ub9cc IE\uc758 \uc81c\uc57d\uc73c\ub85c \uc778\ud574 \ud504\ub85c\uadf8\ub7a8\uc774 Windows\uc0c1\uc5d0\uc11c \uad6c\ub3d9\ub418\uc5b4\uc57c\ud55c\ub2e4\ub294 \ubb38\uc81c\uc810\uc774 \uc788\uc2b5\ub2c8\ub2e4.\n\n\uc774 \ud328\ud0a4\uc9c0\ub294 \ud30c\uc774\uc36c 3.5 \uc774\uc0c1\uc5d0\uc11c \uc0ac\uc6a9\uac00\ub2a5\ud569\ub2c8\ub2e4.\n\n## \uc124\uce58\ubc95\n\n\uc6b0\uc120 pip\ub85c \ubc1b\uc544\uc8fc\uc138\uc694.\n\n```\npip install kb-transaction\n```\n\n\ub2e4\uc74c\uc73c\ub85c\ub294 \uc708\ub3c4\uc5d0\uc11c \ub3cc\uc544\uac08 Selenium StandAlone Server\uac00 \ud544\uc694\ud569\ub2c8\ub2e4.\n\n[http://docs.seleniumhq.org/download/](http://docs.seleniumhq.org/download/)\uc5d0\uc11c \ubc1b\uc544\uc8fc\uc138\uc694. [\ubc14\ub85c\ubc1b\uae30](https://goo.gl/hWYjHR)\n\nSelenium\uc744 \uad6c\ub3d9\ud560 \ub54c \uc774 \uc11c\ubc84\ub294 \ud56d\uc0c1 \ucf1c\uc838\uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4.(IE\ub77c\uc11c...)\n\n\uc704 \uc0ac\uc774\ud2b8\uc5d0\uc11c `Internet Explorer Driver`\ub3c4 \ubc1b\uc544\uc918\uc57c \ud569\ub2c8\ub2e4. 32\ube44\ud2b8 \ubc84\uc804\uc744 \ubc1b\uc544\uc8fc\uc138\uc694. [\ubc14\ub85c\ubc1b\uae30](https://goo.gl/BbeFgE)\n\n> 64\ube44\ud2b8 \ubc84\uc804\uc744 \uc0ac\uc6a9\ud574\ub3c4 \ub418\uc9c0\ub9cc `send_keys()`\uac00 \ubb34\ucc99 \ub290\ub824\uc9c0\ub294 \uc774\uc288\uac00 \uc788\uc5b4 \uc0ac\uc6a9\uc744 \uad8c\uc7a5\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\n\n## \uc0ac\uc6a9\ubc95\n\n```python\nfrom kb_transaction.crawler import get_balance\n\nPATH = 'C:\\\\Users\\\\Administrator\\\\Desktop\\\\IEDriverServer.exe'\ntransaction_list = get_balance(PATH, '\uacc4\uc88c\ubc88\ud638', '\uacc4\uc88c \ube44\ubc00\ubc88\ud6384\uc790\ub9ac', '\uc0dd\ub144\uc6d4\uc77c6\uc790\ub9ac')\n\nfor t in transaction_list:\n print(t)\n```\n\n\uc704\uc5d0\uc11c \ubc1b\uc740 `IEDriverServer.exe`\uc758 \uc704\uce58(\uc808\ub300\uacbd\ub85c)\ub97c \uccab \uc778\uc790\ub85c \ud558\uace0 \uacc4\uc88c\ubc88\ud638\uc640 \ube44\ubc00\ubc88\ud638, \uc0dd\ub144\uc6d4\uc77c 6\uc790\ub9ac\ub97c \uc785\ub825\ud558\uba74 \uc544\ub798\uc640 \uac19\uc740 dict\ub85c \uc774\ub8e8\uc5b4\uc9c4 list\uac00 \ub098\uc635\ub2c8\ub2e4.\n\n> \uc720\uc758: \uacbd\ub85c \uc785\ub825\uc2dc `\\`\ub294 `\\\\`\ub85c \uc785\ub825\ud574\uc8fc\uc154\uc57c \uc81c\ub300\ub85c escaping\uc774 \ub429\ub2c8\ub2e4.\n\n```json\n[{'date': datetime.datetime(2017, 9, 5, 18, 3, 52), 'amount': -1250, 'balance': 114645, 'transaction_by': 'KB\uce74\ub4dc\ucd9c\uae08'}, ...]\n```\n\ndate\ub294 datetime \uac1d\uccb4, amount\ub294 \uc785\uae08\uc774\uba74 +int, \ucd9c\uae08\uc774\uba74 -int, balance\ub294 \ud604\uc7ac \uacc4\uc88c \uc794\uace0 int, transaction_by\ub294 \uc740\ud589\uc5d0 \ucc0d\ud788\ub294 \uac70\ub798\uc18c(\uc785\uae08\uc790\uba85 \ub4f1)\uc785\ub2c8\ub2e4.\n\n## \ubc1c\uc804\uacc4\ud68d\n\n\uc774\uc804 \uac70\ub798\ub0b4\uc5ed\uacfc \ub2e4\ub978, \uc0c8\ub85c\uc6b4 \uac70\ub798\ub0b4\uc5ed\uc744 \ubc1c\uacac\uc2dc DB\ub97c \uc5c5\ub370\uc774\ud2b8\ud574\uc8fc\ub294 Django App\uc73c\ub85c \ubc1c\uc804\ud574\ub098\uac00\ub294 \uac83\ub3c4 \uace0\ub824\uc911\uc785\ub2c8\ub2e4.\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/beomi/kb_transaction/archive/0.0.3.1.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/beomi/kb-transaction", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "kb_transaction", "package_url": "https://pypi.org/project/kb_transaction/", "platform": "", "project_url": "https://pypi.org/project/kb_transaction/", "project_urls": { "Download": "https://github.com/beomi/kb_transaction/archive/0.0.3.1.tar.gz", "Homepage": "https://github.com/beomi/kb-transaction" }, "release_url": "https://pypi.org/project/kb_transaction/0.0.3.1/", "requires_dist": null, "requires_python": "", "summary": "Crawling KB bank transaction with IE Selenium", "version": "0.0.3.1" }, "last_serial": 3151092, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "fb2670b27c790c64021cdc3b8d9d17d2", "sha256": "64b60d6e239e3cf83226ce76e39cae517e31f52473fe4c034b19c50a80e06d45" }, "downloads": -1, "filename": "kb_transaction-0.0.1.tar.gz", "has_sig": false, "md5_digest": "fb2670b27c790c64021cdc3b8d9d17d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4150, "upload_time": "2017-09-05T17:05:32", "url": "https://files.pythonhosted.org/packages/0e/29/5e87fae272b031f4f77060704bfaa9a4a75c1b34012cadaa043724586317/kb_transaction-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "94708849242490307890213d0b190c47", "sha256": "778a699e797bb47706b4cb51bd08c623901c54cb808ca856df42747ed92af451" }, "downloads": -1, "filename": "kb_transaction-0.0.2.tar.gz", "has_sig": false, "md5_digest": "94708849242490307890213d0b190c47", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4141, "upload_time": "2017-09-05T17:13:38", "url": "https://files.pythonhosted.org/packages/d3/01/84d48d8888fa9301613e6ad3a5d332697daf7c708d2f8a0fe7bc3160a261/kb_transaction-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "08d74b39a49a0f2a70f876ce5e52af4f", "sha256": "5b4ee12a298e2c1a3e867e62b39b3d7eb23a64371ea9018ca6fdaa117a74fb06" }, "downloads": -1, "filename": "kb_transaction-0.0.3.tar.gz", "has_sig": false, "md5_digest": "08d74b39a49a0f2a70f876ce5e52af4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4181, "upload_time": "2017-09-05T17:19:00", "url": "https://files.pythonhosted.org/packages/b1/73/c765e7a6558858c64f2ad092ba1b1fa074fceef5e02b039affc81fc0c76d/kb_transaction-0.0.3.tar.gz" } ], "0.0.3.1": [ { "comment_text": "", "digests": { "md5": "6ac7d41075bc35e7e7279f119a51960e", "sha256": "a4b9572622f559e58b3512054e88a9ecfdddc76008d1cd1f011e7527ae20e9f0" }, "downloads": -1, "filename": "kb_transaction-0.0.3.1.tar.gz", "has_sig": false, "md5_digest": "6ac7d41075bc35e7e7279f119a51960e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4509, "upload_time": "2017-09-05T17:45:28", "url": "https://files.pythonhosted.org/packages/65/48/7228d3088f884e2da1a96a42981868e52c0864ea7dbc0316c906e63e56bc/kb_transaction-0.0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6ac7d41075bc35e7e7279f119a51960e", "sha256": "a4b9572622f559e58b3512054e88a9ecfdddc76008d1cd1f011e7527ae20e9f0" }, "downloads": -1, "filename": "kb_transaction-0.0.3.1.tar.gz", "has_sig": false, "md5_digest": "6ac7d41075bc35e7e7279f119a51960e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4509, "upload_time": "2017-09-05T17:45:28", "url": "https://files.pythonhosted.org/packages/65/48/7228d3088f884e2da1a96a42981868e52c0864ea7dbc0316c906e63e56bc/kb_transaction-0.0.3.1.tar.gz" } ] }