Dodano diagramy i część rozdziału dotyczącego projektu.
1
diagramy/Chromosomy.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<mxfile userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36" version="8.5.0" editor="www.draw.io" type="device"><diagram id="76b1b281-f3e2-5f17-53cf-7c8587130762" name="Page-1">7VtNc5swEP01HDMDyFD72LhxculMZ3zoWQEZ1AhEhRw7/fWVQAKDReLE32P5kMBbIa32raR9iXHANFs/MlikP2mMiOO78doBPxzfn4x98VMCbzXguSCskYThWGEtMMf/kG6o0CWOUdlpyCklHBddMKJ5jiLewSBjdNVttqCkO2oBE7QFzCNIttHfOOapQr1w0hqeEE5SPXQYqCk/w+glYXSZqwEdHyyqT23OoO5MzbRMYUxXGxB4cMCUUcrrq2w9RUQGV8etfm42YG0cZyjnOz2g/H6FZIm0yyERz95z+CziIaZEWYxYZQv/LqVj9157KRqsmhA1dleMGnQalfxNRVeDHK35HSQ4yR3wXZIpXBbjCIc3e5UW3Z2ypCryBlPt611ECYFFiVTH+k63WtCc35VV1kl7MC7WHV8jEaMCxjHOk3emrVzfsOsZtI3CRP2uI/pMxZIwxeIDj3rdsAP0Ee84g30HKguY79+LbHwpvtS91JinQbHCNvGP4XpGu7aWdFkCj0Cge14CP70rWuouZe1Z6uyqu0Hq7Kqz1H2aOgkyE1gXxNt4LT007nfi4EvGBZ7yjAjAk7PkjL6gKSVU6pSc5kjGCRPSg+grYgtS6S1pFUgl1ZAUQzJfGjUmbxICy1JdRzTDkbqWwZgrb5r7WsIG48YZrRt91WIGM0ykHn5C5BVxHEFhKBDDGRLpOi9gVKuNoJmx8FXMdFDXeY1aFDIcUdENk9pCPxAqgfnWu2/Fmj8aKyzdkLIag0pCJ03XrYoUF0pIDojKsRWVVlRaTXJ1+7Ql0Ja3QxN1zzWwd3Mzvo1VYsvR2y1HgX/KcnRiy1Fbjh6hmtnhgDjm8Gc7GO35dLVVnM0ZmzOWusuizpaj5y5Hm9LzFOWoLn1tOWrLUeMMrrQcvY1jwv5tz5YWNmfOmTPvD2yLqXMXU+HolMWUZyimeiR2A79KMUcyCNK6YrDo8bsLL90kcHwwm7nis8VIYM6NQZL6/B6AnWDUZcczsOP5BnYacC96TF8vPz09rjuZ7E5PwmCMRXjPyJrXY21k+PpGcDzWwIWw5rqz2TWx5vfWmuG/HEFoYK3ZMvdibTSoK1VhFDWxbc9UsFhUW9fWMfuI8sFC5GCnpNYjqg4A9zL+gh/yXRkyHMdyGGOGffFEPVU6fHN76QAMW+/ItIgPkg7Bl9JBbZVb6TBNGc1oSTObFAdNCtPODoKj7ezhF5PCdeUrbP2k+EWLJYHRH2iT4qBJERoODn9yoKQQt+37hZVt4y1O8PAf</diagram></mxfile>
|
1
diagramy/crawler.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<mxfile userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.62 Safari/537.36" version="8.7.4" editor="www.draw.io" type="device"><diagram id="625b897b-bc36-6d92-01ce-cd687e325a73" name="Page-1">7Vldk6MoFP01qdp9SEoFjT52eia7D7tVU9UPu/NIkCg1KC6SMelfvxAxKpie7iTbH1ObhwQuCNdzDly4mYH7Yv+bQFX+J08JmwVeup+BT7Mg8APgqx9tObSWMI5aQyZoajr1hgf6SIzRM9YdTUk96ig5Z5JWYyPmZUmwHNmQELwZd9tyNp61QhlxDA8YMdf6F01l3lrj0OvtvxOa5d3MvmdaNgh/ywTflWa+WQC2x0/bXKBuLNO/zlHKm4EJfJ6Be8G5bEvF/p4wjW0HW/vc+kzryW9BSvmcB4L2ge+I7cyro1SQ+qBsO8HaodCWUuOtPHQIHd+R6FG8GVg1OZXkoUJYtzZKE8qWy4Kpmq+KW8rYPWdcHJ/ViAQYK3stBf9GBi1ptInCSLUYt4iQZH/21fwTYEqIhBdECu24eSCABuNDpy1Tb3pG/Y6HfMBmZGzIiCg7Dd0DqQoGy2lcgYNrVu4MnIzp1XJDPFNE4u0knhGOyWZ7GzyBhedJw6+BJ3TwxAI1jIgPCCR8S2GGDpAOgqRM7/QeqmqYobqmeAwa2VP5t8Z3EZra166lVN4MmnT1q2GinYakzsZrwaZc4TuByWh/kkhkRA6WlgvuALxwArvOJghDkn4fOzEFqJnhC6fKvbObCkgsTlrnzVPDjdceKLEGgtZA7Ss7Aylm0GHQrdId6vMOA88SW+I96Rd8ur8qtB70Yjtx8Cz9RS/SX8lLcgvxqSHXVPt0hRThO5Mi8JJFHC59GJjvMW+htwhA7CWh+YaX6RRasyTjGLC0ZvlPNBy+Mw0vzwejiCmSVxtdynTpl6ZpFohtVLx4zLhAi4r96vb6gEHMD8/sX68RxOIXElA3c1SWPw/49lHsVcFPXgj+4wY1FFPCFlxkPwf+IXhD/Ls78kc5wgE3bi7fMm7aOxdMLgyNgRVmILQGulH4s8MZ8J8OfyeFTPe/Ovz5btLgowkwflcCXF56h7AFGFgDnRHgJZy7CY2Xc34TZoc0Jm9Jo70sg/hCGqG9XvXRfXDmBuBdbCuhfWO99bbi5ngcidU5qnSRFscE7lBdOqBTjNgdo1mpbJJXA+sfaEPYF15TSblu3XApeaE6MN2wOmVtx1lKnbcFq+Nkd3XVJpq1WlFX2dK9PqisjD+fcil1hvpOoxKscVrCBcW83FJ1oBELrGYM1imSSP1ou2JnTepaSZwiNkdVNVcqXPuR7sXlvOCCzAtS7uY5TcncD+JFVWaz688vQbx0FGcSQ4O1AxJ37XS2qw4wz8hB/U/0TYiGy8gm+tVoDp5xTu1oxjvBDiuh2NFb+4/O/P0Foa1JZMieJ30sue6CFY/3On/p4ganQosdgS8Czp8Arr01bflxR+4RjP7Z8a5hXh//R1Oa9HxY7fvG7qZ1TDS3Aykf2rG6O9gPb2UKTDmmYXzFMqm64X3MmJBZqFiBr26J7gouaJrqaSZ5H98Gb8HtcpzDgtDd+qa4vYBaVe3/ymtDYv9/Kfj8Lw==</diagram></mxfile>
|
1
diagramy/drzewo.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<mxfile userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36" version="8.1.4" editor="www.draw.io" type="device"><diagram id="2d67a8ab-fa02-d879-f19d-d624d738591f" name="Page-1">7ZpBc6MgFMc/jcfdUVCTHNu0u3vZmZ3pYbdHqkSZGnGRNGY//aKCCjFt1ra6k5pDC3/gAe/9RPImFlxvi68MZfF3GuLEAnZYWPDGAmC1dMXfUjjUggedWogYCWupI9yRP1iKtlR3JMS51pFTmnCS6WJA0xQHXNMQY3Svd9vQRJ81QxE+Eu4ClByrP0nIY6k6/qpt+IZJFKupfQ/ULQ8oeIwY3aVyQgvATfWpm7dIGZM7zWMU0n1HgrcWXDNKeV3aFmuclL5VfqvHfTnR2iyc4ZSfM0Au+wklO6xW7Cdi6PWGCgtigfwgveL/3lHV8CmvYnYlOkA/K9pGUYrk/8pKnqG00W6BtbStq2YKsSyt/RVjhFwv+BlTUntgPYP1jkDbOBAuE+SJyvU+JhzfZSgoW/aCfaHFfJuImiOKKM9qHDekwMLD1xUJZenGLlejgl1WogTluSwHdEsCWd6QJFnThDJRT2lazhoxFBIRUEOWocOM4+Jk+J0GKvGwYrrFnB1EFzkALCWH8kF1FJf7FnvVJe4ArzQkH7SosdyyJgoSt3704IzeR0bPdcdDzX01asDtRa1BZNHFZd3RhcmZlNeR4tvTHVLeSXJOHx9DDy70wkEzM9F5cQGdCTDiaeKPyMRLL5+ZiZaJxYRMLEZkwpmZGPzuGJOJ5YhMBDMT5988l9MxsRqRiYeZibOZgO50TKislwaF6fk0vCoTW+2mO97W3JlzRh+x8pAFoF19mhaV0CoHCueww69y4GdPVe+lHVwQ3mkStXs5ql4cDo9yaIazxQbojgWyl/y6zxGLsOwF+kPScbnX43KlMZwgTp70RfTFQc7wg5Lqu55CxNcj7tlGKOvFy1HdFJphqImfNOR6hqF6y0eGKiyabZ9HivNBSXGnJMVd6QFeDQQFLozvsfD9QOnL604KinMSFHswKP6lggLHA6UvCzsOKG8Mw2LKyHtmimroy8Q37yGmoTcMfV9W9OLOiOV/dkZ4xm3BcYYeEp5h6B2vHX1Z0IsjZXVMyqQXVM9IZzVp738mxbjpNjffdyClLzd6cRdUcEyKNykpL90XBt9QF29Fiqi2P2qou7e/HIG3fwE=</diagram></mxfile>
|
1
diagramy/krzyżowanie.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<mxfile userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36" version="8.5.0" editor="www.draw.io" type="device"><diagram id="76b1b281-f3e2-5f17-53cf-7c8587130762" name="Page-1">7Vtbc+IgFP41eexOQi6mj1u33b7sTGf6sLuPmGBkiiGLWG1//UKA3IzVqtHOSB/a8EEO5wJ8h2N1/PF8/ZPBYvaLpog4wE3Xjv/DAeA2DsRvCbwpIBiNFJAxnCrIq4Fn/I406Gp0iVO0aA3klBKOizaY0DxHCW9hkDG6ag+bUtKetYAZ2gCeE0g20d845TONxtFt3fGIcDYzU0chUD0TmLxkjC5zPaED/Gn5o7rn0AjTli5mMKWrBuTfO/6YUcrV03w9RkT61vhNvfewpbdSnKGc7/MCiNQbr5AskVE5IuLdOw4nwh/CJMpSxMq+6N9SKnbn1Y9iwKpyUdXvilnD1qAFf9PeNSBHa34DCc5yx/8ugylUFvMIhZtSZY8Rp3tm2vM9XUrXm4QSAosF0oJNy4ya0pzfLMpVJ/vDuFi3dE2EjwqYpjjPPjBbq97oNxbUg6JM/1UenVCxI/p8sUOjjhh2AhnpnhYcO9GigPnxUuTgQ6TI2NP22i13pOvKdTOszkqKwjwDip3YxHfDyvJ9R8uw2kBfMNDuZQP96VP2kOB8ytXubhM3bZEg6wPVAbqJK6oyOGh5AkgXCHzG50QAnowYZ/QFjbUdOc2RtA4TMq5Mk7QNkkTg9BWxKSlJWg4RSMnvSDKo9GJF4bKREbhY6OeEznGin6Xpz1qlqq3ynjCuNDLJBtAjHuAcE5lDPSLyijhOoOgoEMNzJIL4XMBEUVRYmS10FeZuTQa8KsUQqRuiQgyThGReiHRW8tZp1wwvcjmNzRr5T6wxqPOurBJdpx7iQWcf/ZmI79pMxGYiAxLU2U4vS7mWci9Jud5uE/ttudDUR7K9wicNCSfh/zREcRpcF/+78e4EwAdDJQCgJwHohBLl6XdZ3xGtRHpa+rcZWLTG/I908TfPD3T7b9m+DUe6/WT8Z+LXcn1UuRKlG0WijiOFanTJEj0KjPqd2/Bd2OM6gzFEIMev7Sn7/KlneKK43J9bcrco7IREqarfalaEOoJGoC0ocDuCOGQZ4huCyvBWZu8Xcf/4iG9Gr7kGwj3XwGER992LRtzz25EC0YEhj4PzhTzYmuXvm4cEYR9hvrD3N2ccOndjuoI5RluJqLO+2mf5aoY5kueq7F0xWLQXW5ciIIqnyQafiJ4oidFkeppTOXI70fF7DuWoZ5153TAedCqHw+7R5g71Dt+JwZc6e7uO3/vs7fBv5A23EW3h31637eXUFv5toG0V4suUzmzh/yIX/7CTYkbmLn6Wwv+tzURsJmIL/5ZyLeUet2ht4f8U/H+Fhf9RsJv/B6v7A8v/lv+HYMvmmXS1ZG1J+AAS/njlXPySqqHr4afuB1Rn/cc0MLL8ZPnJEoStgF9nAK+Q4Wtk0ExgiAvs1eUGgbs7NzjV3VU066/mqQ/d6+8/+vf/AQ==</diagram></mxfile>
|
1
diagramy/mutacja.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<mxfile userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36" version="8.5.0" editor="www.draw.io" type="device"><diagram id="76b1b281-f3e2-5f17-53cf-7c8587130762" name="Page-1">7VtLc9sgEP41PiYjCT3wMXHzuHSmMzm0PRIJyzRYqAjHTn99QYAsJDtxm3eCL4ZdtKz2W3+7SMkEzJabC47qxVdWYDqJgmIzAV8mURRmAMovJbnTEhhlWlByUphFW8EV+YONMDDSFSlw4ywUjFFBaleYs6rCuXBkiHO2dpfNGXV3rVGJR4KrHNGx9DspxMJIYTrdKi4xKRd26zSJtOYa5TclZ6vKbDiJwLz9aPUSWWPmTpsFKti6JwJnEzDjjAk9Wm5mmKrg2rjp6873aDvHOa7EIRcA4/ctoitsXW4dE3c2GrgqTlRQ5SynqGlIPgGnC7GkUhDKId4Q8UOOg+PEzH4aTSM4u+lCmErJ2D/jcsNWPDcbxiY4uHBgMndwgdkSC34nF6y34CTmmkUPFivjmCJBbl1wkcmRsjPX7fCNEeldFNh8To0dk82ptWtNaN/NVf1gDwxl0DUEsoEhgXiJxciQHPRueytqsdyDa7wD15TKwJzOWevTFuD094pZxVHT/hhP5II4qTdbpRyV6nu5Eij/hawx6Ye2p7Wj3Gl/Clg5FUj1ekEEvqpRC/RacoebSHNC6YxRxttrAQ6LBGddGvU00zQD6N50usVc4M29yWO0aTAAxYLUSy6Q7siuMAj2Z5ID3T04WWLcgZNA1zKKklIYLzB3kAr7uPQc7fTKtcRZNIZbxkccIUrKSuOdyxjKfaLAsao01pzR2CDsUGlfj3JGKaobk0jdzK4aJFoC3USTnlBao6IgVXnPbRvXe3p7B8Oc7SJ6zYq7Q1J/6NHADH8CG8WBd/DYjZoaVY+3cihnvIQv2oqWhT0e6ssfFrus9dBqBZcH8BkADF4NQCXku4SaJMZyTceu/LpnYVD5FL265c0tYxWr8KDmGRGTxWtO235LaaXEraJdz6gmperIzDhnS9WbtWMVnivjTTfXjXYCR61ZZFacoyWhqhBeYnqLBcmRVNSYE1nYMFeVW3Ny8jS1Nxk0RFEwrr3hrtoLn6D02i7Tl15fej8gcyvsmZu77WE0CFTefIYS/QYZvn+qeVc0P+L0Hcy/l+az+GGah8/F8qFnec/yH5blPy57ewD9AcsfsB5ZeWH0mgesV3m3MHhpcFC0XuY9QgaDYxAGII5hlCUwBQ40MUz+861CNj2e9j7QMZs83zuGGPjWyrdWvjL71upzAuhbq8/cWg2fXSeyDMNoCkAWQVXh4Qs2Wvtf9vtC7AvxW+HO9/4k2/O9f5Id/yvpP9tz7cRzvuf8D8v5/vD1RoL2VgH0xfgzH76Gz7Vf7vAlp9u/ztcPTbf/AwHO/gI=</diagram></mxfile>
|
1
diagramy/overview GA.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<mxfile userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36" version="8.5.0" editor="www.draw.io" type="device"><diagram name="Page-1" id="12e1b939-464a-85fe-373e-61e167be1490">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</diagram></mxfile>
|
1
diagramy/overview GA_final.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<mxfile userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36" version="8.5.0" editor="www.draw.io" type="device"><diagram name="Page-1" id="12e1b939-464a-85fe-373e-61e167be1490">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</diagram></mxfile>
|
1
diagramy/scrapy_data_flow.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<mxfile userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.62 Safari/537.36" version="8.7.5" editor="www.draw.io" type="device"><diagram id="cf372a5d-54c1-bbd3-8c64-dd4e289d779e" name="Page-1">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</diagram></mxfile>
|
1
diagramy/selekcja.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<mxfile userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36" version="8.5.0" editor="www.draw.io"><diagram id="bb0638dd-97e0-e7d5-b72f-ff29945f45a6" name="Page-1">5Vhdb5swFP01SO3DJoMxkMc2KdvLpEmdtMeKggNWAWfGaZL9+l3AfLtNO4GmrDwk9rn2tTnn2r7GwOvs+EUEu+Qbj2hqWCg6GnhjWJZpYRP+SuRUI8RzaiAWLFKNOuCe/aYKRArds4gWg4aS81Sy3RAMeZ7TUA6wQAh+GDbb8nQ46i6I6QS4D4N0iv5kkUwU6jmrzvCVsjhphnaIVVseg/ApFnyfqwENC2+rpzZnQeusBookiPihhqqXx3cGXgvOZV3KjmualuQ2vNUM+S9Y24kLmsu3dFDTfg7SvXp3w0H8wYRfNUF5alipXouWHZGBbw8Jk/R+F4Sl9QBxAFgisxRqJhS3LE3XPOUC6jnPaQnxXCqtrbKJGpoKSY8vTt9sSYFoozyjUpygiergqVmemshT9UNPNaywpCeYrbBABUrceu64goKiS08d1lNnXQh17WJ7jbvVQtzZeu7whXBno/PcLRV2RE+dPSt11bZFnTDU8FfWe+18H8EDeCEFf6I9C0LKMgfj+Dzj9kKMO3rGyaUEq3ueuqXWuTelbswYzaOb8sjuOOgxVMdUcwabGoIKGQg5clBhPitntenij0aTQ/8shT2KiIaiBhM0DSR7HrrX8aZG+M4ZDPzSKbYaEV/wvQip6tM/y0duiPO6H2AlpnLip9Kwfec3ybpaXNYLk8z7S8nG+QtaTLLmtP/AmhGy+uwRZDvYc1zTc8ksEr7udUlFzXcp+pjy8OlHwvL3ygo+ensp1JTRtC5Ac5usBnq06+C9Mo8dmQ5eTFjNpcxyUqm0GSjs/NrzxvCpqIS5gQamuzt2RijF1b+DBBgNsoYosNAVUAGTQf51lcnUI8Dk6kFUl3FEQR4idRE0zmOmqU2QshiCbxNCZFDAb8ushsGl+0YZMhZF5TDatGmYWC2QJuGVO4oUdUk5d5e0ZsiTTO1lEukyzP9WgFH20qy3Mwn+LOxrr6P+h2Kf2Pif0a+90vrlTlVWyv2q2GcPhnvLKs7djUHuoA/aXvEHdn0RMpneTF9tyHCV2NZ0kzLn0Qmq3XfI+hjrvvbiuz8=</diagram></mxfile>
|
1
diagramy/struktura_programu.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<mxfile userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36" version="8.6.5" editor="www.draw.io" type="device"><diagram id="cb6c6256-43c7-094e-4ab5-cf55f2e6a3c1" name="Page-1">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</diagram></mxfile>
|
BIN
img/amb_text_search.png
Normal file
After Width: | Height: | Size: 137 KiB |
BIN
img/crawler.png
Normal file
After Width: | Height: | Size: 21 KiB |
BIN
img/crawler_adresow.png
Normal file
After Width: | Height: | Size: 6.1 KiB |
BIN
img/crawler_adresow_trans.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
img/crawler_parafii_general.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
img/crawler_url.png
Normal file
After Width: | Height: | Size: 5.6 KiB |
BIN
img/crawler_url_trans.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
img/data_fragment.png
Normal file
After Width: | Height: | Size: 52 KiB |
BIN
img/drzewo.png
Normal file
After Width: | Height: | Size: 46 KiB |
BIN
img/kodowanie.png
Normal file
After Width: | Height: | Size: 41 KiB |
BIN
img/krzyzowanie.png
Normal file
After Width: | Height: | Size: 41 KiB |
BIN
img/mutacja.png
Normal file
After Width: | Height: | Size: 17 KiB |
1
img/overview GA_2.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<mxfile userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36" version="8.5.0" editor="www.draw.io" type="device"><diagram name="Page-1" id="12e1b939-464a-85fe-373e-61e167be1490">7V1Rc6O2Fv41fkwGISTgMfFutnfa7XQmD733kQC2aTByQY6T/PpKNrJBInfYgGTKKp6J4QgL0PedI+noSFrA5fb1WxntNt9JkuYL10leF/DLwnWBDwP2xSVvJ0ng+ifBusyS+qKL4DF7T2uhU0v3WZJWrQspITnNdm1hTIoijWlLFpUlObQvW5G8fdddtE4VwWMc5UJ6iy7yP7OEbmo5wOEl4Zc0W2+oeEN8SniK4ud1SfZFfceFC1fHv1PyNhJ51a9abaKEHBoi+HUBlyUh9HS0fV2mOS9dUXCn3z18kHp+nzItaJ8fwNMPXqJ8n4onPj4XfROlwX7ACp6d3B82GU0fd1HMUw4Meybb0G3OzgA7jKrdCY1V9pqy/O+P5cCPvjjs7Pyq/GSdR1VVH8dkm8XiIlqS53RJclIySUGK9CwUQCAmWWV5Li7iRYz4h8tJQR+ibZZz5v2S5i8pzeKoTqiJhgJ+/zJKMlZGjUyejh+WppZhXawvaUnT14aoLtNvKdmmtHxjl9SpHnIEh2odALg+P1z4BGsSbBpMErKo5vD6nPcFRXZQA/kBCxyLqhZUIZJQdYFBVIFFVQeqyLmqrroWVS26GiiohgZRtfWqHlQd2QIDaBBVz6KqBVVf1lUGtDlUkUVVS73qKRY4MKir2KKqBVVX0VWTFti3qOpAFYZKz8YkqoFFVUu9Cq5pgd2u/irOaV0OLXjx33siEm6qYwndsQugs3u9JLKjNf/+T5HFf0V59h6xL15GZLfP2XEmsmdPdrrD6XqFS6z4aJs0nYA34a1F7K7rgp3GDJSUye85GAzb/K5O2GZJkn/E0k8wsTeVxjACinvDOwsafHHDDsIAMAZj5tG+TlAaJN5AOxD6ieP7I9kB6LdhFecmrMBMWterlRvHAzFdrZIQ45EwFeUoMA0MYjqTtvXkMA2uqKfzaFlPz/ZiCVNsENOZtKunpqcwlGyvYxDTcBaYTk9PUVtPkRiYMYCpyMNiOi6myJVsLzKnp3Amo7VTs73IkfTUoO2F7iwwnZyewsC9HqbzGKmdHqbhFW1vlx9pDM/j1wPL8eR1tJ7GAeRwJYWHGKjkEK7q0dnRp1dUJHc8kJQDwMuLl1ILxWaJtiFlehQ4/KOoLYCjFHOatKJX1UJuFCLq0DAhK9M8otlL2sq8q2DrO/xBsqPunAftpQGjQMKmIvsyTutfXeDpyMiT3M4QS1nRqFynVMnqiPT5xfuB36f7dH3wOcaP9RORkm7ImhRR/vUivY/35ctRwcG/gCsIh/LIQgg+xxYcyllhAHSxxevqmI1RkTymefps65Gh9Qh2ZdNxJkOD2ABBPTWJN48+3uTajhgHMqxBaKz16M2jlze5njtGUELVhwZRnUc/b3Ko+uCqumojBvRY4FBG1QcGUbUxA3ossCtbYIwMojqPqIHp6Wqg6Cr2zKFq4wa0oOojBVXHoK7ayAE9rSWooGrSAtvYAT0WGCg9G4Oooi4nlUV1hNbSNS0w6tEGZmjs+GG2PS5o0cRR9vJRsmtIf4ue0vwPUmU0Izz1iVBKtuyCnCfcn9ewaJvS0zoW8P54uztBFKeLNfUTfdlQytfsuOOv7T7ESeHcZjEpVhnjVHnLSMOkSUQj9sXlFfuusu0uT2+SqHxmkhuG0QNw+P8q3uf5DWCo7Ir1GMxkb+Wwv4cHhZ5QpefZrS+zTrhe+7KWnzfyfXjgzzBS7aLMzcKh6g4V0btNxgrZIMb2aN9bxlrGtm2sPOUEdwwFa2Nsj76LZaxlbNuLjeVWgXAtm2Bsj36ZZaxlbKtVoMzD903aWBtwcYWACyhFPgdh2M6ib7gFkML4fF/KaLxgC9xnhO76TPlIU2fGIDXOJpDjbPpyCAElK79fyA7DOnprXLbjF1Q/9ND1nS60POX5aZLqCi39tXx/WyzR4n5JDlGRpTYyaFj4MfLaditUw4+1xQXheYx0heFyeWwGDfHIQZbNMZMxQPVl9Q472t66PHJ4HiNd00M1kNsqgTlM5zEiMjlM5dmUATKHqe9aTPVg2q5SQ9ec7Q362N4J9w1eM/pffudbVJ/9r36OsXoNp7Z4XVi1rk2kJ3FejlrM7vMkQvTtR0C/nZHnSxmN1Is4r8kr3WesPkTQ5cQbow/xfU/t5LTBdg4oy2Bhx+tYB0tb9yH4d7jMPjR2BXvfhrXjp8LcfQjPSXXrimVanhBlZQj0ST+IJ3yhglZePy/IJ0yMKMLx3RSkyNLYWpiBPR5lnF64VU3YF7F6zQByuJwcR1ZI/PidHJpLMv6sdZHLL0yykvUdTmNph7Six9vRqJbceGis+kpeYQqrXBJtjvG3GrHRZ3rif2G7sghCeOsxyELkOxC4anNE32Yy85jlOMFY4DbCIbwawvPwmEwfYd+9FsI9xlZt3IiNG2nHjQCJvd7/Z6+uEBLgzGOW5+Q8urJ9YppxtSpoHlM+U5w4yQ8pcAfECWLAJLogRleDuMuH/2PdToC6fBIil2oXFWfZV3fBDGwIGx3QVrqLoy2nTfFU8a+EPJXsLqy0y/e3ipKKR2Hwc3b0VGTPP+veAnCsygTLg7ydWwt4HeQTE8+H7Z04fCUffeSreOBP4EZPxBJQHwHbgzoh7Ija1ke/4f5YffS7MMzZV/siWyy9RRhSTr73hi/PMnDwjG65PW2SgcOdvvoYWJBD29QdiffcDon8WX3Juvh3bO0brYO7nBBToeD7dk9tlTsu4XwgEQ6pFg8I2fh0m4fXYHK7yikjE6jLjOjbBb3LUzAVK7Ij8TtvPgWIPst1mrUlg5rvWCJdZ0gO7hjmHMeY2EBhPUGlUqxd6JoLFAbuPMauJwcq9NugBthcpDBwu7raFtThmgolUH2TmtrVe7Wgjm5+A4PzqcBMtnudHKhQgCjqVMekps5jIG9yoHrSlilBaFJT5zGhdXKjs0AalPA9c5skgZns+Do5TQXKZie+CLAzAus8lm6dHKzskZSlykzCah0QmmBV1vNyDRrhmWz9OjlYQSjvDORDg9o6k91fpwcrUjZ8MrifOpjJBrCTawe7QIE1MKmt89gbaHraqhhhbLKD07kNrIV1OKzKor0+MKmt1sOkpyWMFW3tWDRNH6zz8DGNMpHUccKwMY1HwbAD6Y8dh2I/w3P3xtzmQOepyRbUcUFV95EBTtgVEaEP2eGL2GiMJ43+ytNd9c5LrA7AsfE3wwgnrb3E6NYV9QXEnMGBATjstCScFue0b6yYNt9JkvIr/gE=</diagram></mxfile>
|
BIN
img/overview_GA.png
Normal file
After Width: | Height: | Size: 98 KiB |
BIN
img/scrapy_data_flow.png
Normal file
After Width: | Height: | Size: 49 KiB |
BIN
img/selekcja.png
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
img/struktura_wyszukiwarki.png
Normal file
After Width: | Height: | Size: 81 KiB |
BIN
img/uam_logo.jpg
Normal file
After Width: | Height: | Size: 11 KiB |
@ -41,9 +41,9 @@
|
|||||||
\input{abstract.tex}
|
\input{abstract.tex}
|
||||||
\newpage\null\thispagestyle{empty}\newpage
|
\newpage\null\thispagestyle{empty}\newpage
|
||||||
\input{wstep.tex}
|
\input{wstep.tex}
|
||||||
\newpage\null\thispagestyle{empty}\newpage
|
% \newpage\null\thispagestyle{empty}\newpage
|
||||||
\input{rozdzial_1.tex}
|
% \input{rozdzial_1.tex}
|
||||||
\input{rozdzial_2.tex}
|
% \input{rozdzial_2.tex}
|
||||||
\newpage\null\thispagestyle{empty}\newpage
|
\newpage\null\thispagestyle{empty}\newpage
|
||||||
\input{rozdzial_3.tex}
|
\input{rozdzial_3.tex}
|
||||||
\input{rozdzial_4.tex}
|
\input{rozdzial_4.tex}
|
||||||
|
200
rozdzial_3.tex
@ -1,9 +1,203 @@
|
|||||||
|
|
||||||
\chapter{Metodologia}
|
\chapter{Ekstrakcja godzin rozpoczęcia mszy świętych}
|
||||||
\section{Ogólny zarys}
|
\section{Ogólny zarys systemu}
|
||||||
|
System zaczyna działanie od zebrania jak największej ilości danych (nazwa parafii, adres, diecezja
|
||||||
|
itd.) o polskich parafiach ze strony deon.pl. Następnie odpytuje api Google'a w
|
||||||
|
celu znalezienia adresów internetowych parafii.
|
||||||
|
Dla każdej parafii dla której udało się znaleźć adres url pobierane są wszystkie
|
||||||
|
podstrony w odległości (sieć to graf) conajwyżej 3 od strony startowej.
|
||||||
|
|
||||||
|
Z dużej liczby stron parafialnych, za pomocą prostych reguł wyodrębnione zostają
|
||||||
|
te na których z dużym prawdopodbieństwem znajdują się godziny mszy świętych.
|
||||||
|
Każda godzina wraz z kontekstem w jakim się znajduje trafia do \textit{systemu
|
||||||
|
crowdsourcing'owego}, gdzie jest annotowana jako poprawna lub niepoprawna godzina mszy świętej.
|
||||||
|
Do zannotowanych danych zostają dołączone poprawne godziny mszy świętych
|
||||||
|
znalezione przez
|
||||||
|
regułowy ekstraktor mszy świętych o bardzo wysokiej precyzji. Dodatkowo w celu wyrównania
|
||||||
|
klas z nieodfiltrowanego zbioru stron parafialnych wylosowane zostają niepoprawne godziny mszy świętych.
|
||||||
|
Zebrane dane zostają użyte do wytrenowania klasyfikatora godzin opartego na
|
||||||
|
płytkich sieciach neuronowych.
|
||||||
|
|
||||||
|
Finalny ekstraktor godzin mszy świętych utworzony zostaje z połączenia
|
||||||
|
ekstraktora regułowego z ekstraktorem opartym na uczeniu maszynowym.
|
||||||
|
% \bigskip
|
||||||
|
|
||||||
|
% \newpage
|
||||||
|
\begin{figure}[tbh!]
|
||||||
|
\center
|
||||||
|
\includegraphics[width=1\hsize]{struktura_wyszukiwarki.png}
|
||||||
|
\caption{Struktura ekstraktora godzin mszy świętych.}
|
||||||
|
\label{struktura_pic}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
|
|
||||||
|
\newpage
|
||||||
\section{Zbieranie informacji o parafiach}
|
\section{Zbieranie informacji o parafiach}
|
||||||
|
|
||||||
|
\begin{figure}[tbh!]
|
||||||
|
\center
|
||||||
|
\includegraphics[width=0.7\hsize]{crawler_adresow_trans.png}
|
||||||
|
\label{crawler_adresow_pic}
|
||||||
|
\end{figure}
|
||||||
|
Dane zostały zebrane z serwisu internetowego deon.pl, który zawiera 10130 parafii.
|
||||||
|
Warto zauważyć, że deon.pl posiada większość polskich parafii, ponieważ według
|
||||||
|
danych statystycznych GUS z 2016 roku w Polsce było
|
||||||
|
10255 parafii.
|
||||||
|
|
||||||
|
Dla każdej parafii zebrano:
|
||||||
|
\begin{itemize}
|
||||||
|
\item nazwę parafii,
|
||||||
|
\item miejscowość w której się znajduje,
|
||||||
|
\item województwo w którym się znajduje,
|
||||||
|
\item dokładny adres,
|
||||||
|
\item nazwę dekanatu do którego należy,
|
||||||
|
\item nazwę diecezji do której przynależy.
|
||||||
|
\end{itemize}
|
||||||
|
Do wydobycia danych został użyty skrypt w pythonie, który korzystał z parsera
|
||||||
|
html z biblioteki BeautifulSoup. Przy wysyłaniu zapytań do serwisu deon.pl zastosowano
|
||||||
|
algorym \textit{Expotential Backoff} REF, który prezentuje się następująco:
|
||||||
|
\begin{enumerate}
|
||||||
|
\item Wyślij zapytanie do serwisu.
|
||||||
|
\item Jeśli zapytanie się powiodło wróć do punktu nr 1, jeśli nie poczekaj 1.5s i wyślij kolejne zapytanie.
|
||||||
|
\item Jeśli zapytanie znów się nie powiodło odczekaj 2.25s i wyślij kolejne
|
||||||
|
zapytanie
|
||||||
|
\item W ogólności czekaj $1.5^t$ sekund zanim wyślesz kolejne zapytanie, gdzie
|
||||||
|
$t$ to liczba następujących po sobie nieudanych zapytań.
|
||||||
|
\end{enumerate}
|
||||||
|
Powyższy algorytm uodparnia skrypt na przejściowe problemy z połączeniem i
|
||||||
|
zapobiega zbyt częstemu odpytywaniu serwisu kiedy ten nie daje sobie rady ze
|
||||||
|
zbyt dużą liczbą zapytań.
|
||||||
|
|
||||||
|
\begin{table}
|
||||||
|
\centering
|
||||||
|
\def\arraystretch{1.1}
|
||||||
|
\begin{tabular}{ l l l l l l }
|
||||||
|
\textbf{Parafia} & \textbf{Miejscowość} & \textbf{Adres} & \textbf{Diecezja} & \textbf{Dekanat} & \textbf{Województwo} \\
|
||||||
|
\hline \\ [-2ex]
|
||||||
|
Bożego Ciała & Hel & ul. Gdań... & gdańska & Morski & pomorskie \\
|
||||||
|
Ducha Św. & Śrem & ul. Prym... & poznańska & Śrem & wielkopolskie\\
|
||||||
|
Św. Trójcy & Paszowice & Paszowic... & legnicka & Jawor & dolnośląskie\\
|
||||||
|
\\ [-1.5ex]
|
||||||
|
\end{tabular}
|
||||||
|
\caption{Fragment zebranych danych.}
|
||||||
|
\end{table}
|
||||||
|
|
||||||
\section{Wyszukiwanie stron internetowych parafii}
|
\section{Wyszukiwanie stron internetowych parafii}
|
||||||
\section{Wydobywanie tekstu ze stron parafialnych}
|
\begin{figure}[tbh!]
|
||||||
|
\center
|
||||||
|
\includegraphics[width=0.7\hsize]{crawler_url_trans.png}
|
||||||
|
\label{crawler_url_pic}
|
||||||
|
\end{figure}
|
||||||
|
\subsubsection{Pierwsze próby}
|
||||||
|
Do wyszukiwania adresów url parafii próbowano wykorzystać wyszukiwarki takie jak
|
||||||
|
Google i DuckDuckGo. Automatycznie wysyłano zapytanie złożone z konkatenacji
|
||||||
|
nazwy parafii, jej miejscowości i ulicy na której się znajduje. Wyszukiwarka Google dawała
|
||||||
|
zadowalające wyniki, jednak po kilkunastu zapytaniach blokowała adres ip. W
|
||||||
|
dodatku w warunkach użytkowania serwisu i w robots.txt Google zabrania
|
||||||
|
korzystania z pająków na ich wyszukiwarce.
|
||||||
|
DuckDuckGo nie blokowało adresu ip, ale zabraniało \textit{crawlowania} w robots.txt i słabo radziło sobie z polskimi
|
||||||
|
zapytaniami. W obu przypadkach powyższa metoda stwarzała kolejny problem do
|
||||||
|
rozwiązania - z wielu wyników wyszukiwania trzeba było wybrać ten który zawierał
|
||||||
|
adres url parafii.
|
||||||
|
\subsubsection{Rozwiązanie}
|
||||||
|
Po wieleokrotnych próbach poszukiwań znaleziono klucz do rozwiązania problemu
|
||||||
|
wyszukiwania adresów url jakim jest
|
||||||
|
\textit{Google Places Api} REF. Serwis \textit{Text Search} REF pozwala na wyszukanie miejsca
|
||||||
|
danego obiektu na
|
||||||
|
podstawie jego nazwy. Ponadto mając już wyszukany dany obiekt i jego
|
||||||
|
identyfikator można odpytać serwis \textit{Place Detail} REF, aby wyciągnąć więcej
|
||||||
|
szczegółów o danym miejscu. Między innymi można otrzymać adres url danego obiektu.
|
||||||
|
|
||||||
|
Jedynym minusem jest ograniczenie liczby zapytań do 1000 na 24 godziny. W
|
||||||
|
dodatku każde zapytanie do serwisu \textit{Text Search} traktowane jest jak 10
|
||||||
|
zapytań. Podając swoją kartę płatniczą można zwiększyć limit
|
||||||
|
zapytań do 150 000 na 24 godziny. Karta płatnicza jest potrzebna Google'owi do
|
||||||
|
identyfikacji osoby. Żadna opłata nie jest pobierana za korzystanie z api.
|
||||||
|
|
||||||
|
Dla każdej parafii wykonywane jest zapytanie do serwisu \textit{Text Search}
|
||||||
|
składające się z konkatenacji nazwy, parafii, jej miejscowości i ulicy na której
|
||||||
|
się znajduje. Jeśli nie zostanie znaleziony żaden obiekt wysyłane jest powtórne
|
||||||
|
zapytanie, lecz tym razem składające się tylko z nazwy parafii i jej
|
||||||
|
miejscowości. Zdarza się, że \textit{Text Search} zwraca kilka obiektów. W takim
|
||||||
|
przypadku brany jest adres url pierwszego obiektu z listy wyników.
|
||||||
|
Najczęściej jednak oba obiekty należą do tej samej parafii, więc mają taki sam
|
||||||
|
adres internetowy.
|
||||||
|
|
||||||
|
Powyższą metodą udało się zebrać adresy url dla ok. 5600 parafii.
|
||||||
|
|
||||||
|
|
||||||
|
\begin{figure}[tbh]
|
||||||
|
\center
|
||||||
|
\includegraphics[width=1\hsize]{amb_text_search.png}
|
||||||
|
\caption{Przykład dwóch obiektów zwróconych przez \textit{Text Search}, które
|
||||||
|
mają ten sam adres internetowy.}
|
||||||
|
\label{text_search_pic}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\section{\textit{Crawlowanie} stron parafialnych}
|
||||||
|
|
||||||
|
\begin{figure}[tbh]
|
||||||
|
\center
|
||||||
|
\includegraphics[width=0.7\hsize]{crawler_parafii_general.png}
|
||||||
|
\label{crawler_parafii_general_pic}
|
||||||
|
\end{figure}
|
||||||
|
Crawler został napisany przy użyciu biblioteki Scrapy.
|
||||||
|
Punktem startowym jest pojedynczy adres url parafii podawany na wejście
|
||||||
|
programu. Z początkowego adresu url wydobywana jest domena w obrębie której
|
||||||
|
porusza się pająk. Oznacza to, że jedna instancja pająka zajmuje się ściąganiem
|
||||||
|
tylko jedenej parafii. W ramach jednej parafii pająk jest w stanie
|
||||||
|
asynchronicznie wysłać wiele zapytań do serwera i odbierać wiele odpowiedzi od serwera.
|
||||||
|
|
||||||
|
\subsubsection{Komponenty crawler'a}
|
||||||
|
\subsubsection{Przepływ danych}
|
||||||
|
|
||||||
|
Przepływ danych kontrolowany jest przez
|
||||||
|
silnik i prezentuje się następująco:
|
||||||
|
|
||||||
|
\begin{figure}[tbh]
|
||||||
|
\center
|
||||||
|
\includegraphics[width=0.7\hsize]{scrapy_data_flow.png}
|
||||||
|
% \caption{100 crawlerów pracujących jednocześnie}
|
||||||
|
\label{scrapy_data_flow_pic}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
|
\begin{enumerate}
|
||||||
|
\item Silnik otrzymuje od pająka żądanie pobrania początkowej strony danej
|
||||||
|
parafii (najczęściej jest to strona główna parafii).
|
||||||
|
\item Silnik oddaje żądania dyspozytorowi, który kolejkuje je do dalszego
|
||||||
|
przetwarzania oraz pyta dyspozytora o żądania gotowe do przekazania downloader'owi.
|
||||||
|
\item Dyspozytor zwraca silnikowi następne żądania.
|
||||||
|
\item Silnik wysyła żądania do downloader'a. Zanim żądania dotrą do
|
||||||
|
downloader'a przetwarzane są przez middleware'y downloader'a.
|
||||||
|
\item Downloader ściąga stronę parafialną i umieszcza ją w odpowiedzi, którą
|
||||||
|
przesyła silnikowi. Zanim odpowiedź dotrze do silnka przetwarzana jest przez
|
||||||
|
middleware'y downloader'a.
|
||||||
|
\item Silnik otrzymuje odpowiedź od downloader'a i przekazuje ją pająkowi do
|
||||||
|
dalszego przetwarzania. Zanim odpowiedź trafi do pająka przetwarzana jest
|
||||||
|
przez middleware'y pająka.
|
||||||
|
\item Pająk przerabia odpowiedź i zwraca dane strony parafialnej silnikowi. Zanim dane
|
||||||
|
trafią do silnika przechodzą przez middleware'y pająka. Dodatkowo pająk
|
||||||
|
wysła żądania z nowymi stronami parafialnymi do pobrania.
|
||||||
|
\item Silnik wysyła zebrane dane do przetwarzacza danych, który zapisuje je w
|
||||||
|
pliku jsonline. Następnie przekazuje nowe żądania do zakolejkowania
|
||||||
|
dyspozytorowi.
|
||||||
|
\end{enumerate}
|
||||||
|
\vspace*{-20mm}
|
||||||
|
Cały proces trwa dopóty, dopóki są nowe żądania do przetworzenia.
|
||||||
|
|
||||||
|
|
||||||
|
\vspace*{20mm}
|
||||||
|
Z pomocą GNU parallel crawlowane jest jednocześnie 100 parafii.
|
||||||
|
|
||||||
|
\begin{figure}[tbh]
|
||||||
|
\center
|
||||||
|
\includegraphics[width=0.7\hsize]{crawler.png}
|
||||||
|
\caption{100 crawlerów pracujących jednocześnie}
|
||||||
|
\label{crawler_pic}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
\section{Organizacja danych} % może zbyt inżynierskieby
|
\section{Organizacja danych} % może zbyt inżynierskieby
|
||||||
\section{Ekstrakcja godzin rozpoczęcia mszy świętych}
|
\section{Ekstrakcja godzin rozpoczęcia mszy świętych}
|
||||||
\subsection{Ogólny zarys}
|
\subsection{Ogólny zarys}
|
||||||
|
Before Width: | Height: | Size: 86 KiB |