Client and Server, using multithreaded programming in Python.
$10-30 USD
Cancelado
Publicado hace más de 8 años
$10-30 USD
Pagado a la entrega
You should write a client and a server, using multithreaded programming in Python. Server is a web crawler that offers three services on three different ports as follows:
1- On Port 6767: Server crawls the web for extracting links until reaching a specific depth. for this purpose client sends a web address, and depth of crawling. For instance, if client sends “[login to view URL],2”, server extracts all links on [login to view URL], and add them to the output list, then for each web address on [login to view URL], the same process will be done by server to achieve new web addresses.
See example in image attached to project.
2- On Port 7878: Server crawls the web for extracting email addresses, until reaching a specific depth. For this purpose client sends “mails”, a web address, and depth of crawling. For instance, if client sends “mails,[login to view URL],2”, server extracts all email addresses on [login to view URL], and add them to the output list, then for each web address on [login to view URL], the same process will be done by the server to extract the email addresses on these web addresses. For a better understanding, please go through this example:
In the example shown in Figure 1, client sends: “mails,L1,2” (L1 is a web address like [login to view URL]), then the server sends all mail addresses on L1, L2, L3, L4.
3- On port 8989: Server crawls the web for finding a specific word or phrase, until finding that word or reaching a specific depth. For this purpose client sends “search”, a web address, a word and depth of crawling. For instance, if client sends “search,[login to view URL],IT,2”, server searches [login to view URL] for “IT” if there is at least one “IT” in this page, server returns iut.ac.ir. Otherwise, the same process is done on other web addresses on [login to view URL], until “IT” is found. Then the address of the page, on which the “IT” was found, will be sent to client. For a better understanding, please go through this example: In the example shown in Figure 1, client sends: “search,L1,W1,2” (L1 is a web address like [login to view URL] and W1 is a word like
“IT”) Server will search L1 and then L2, L3, L4 for W1, and returns the address of the first page, on which W1 is found. If W1 is not found on either of these pages, “W1 was not found” will be sent to client.
Please notice:
Using these libraries is recommended for crawling: Beautiful Soup 4, re, urllib2.
Write suitable comments for your code.
I have experience in web-scraping and multi-threading. I have worked on many projects in Python.
The code will be simple, clean and well commented.
The project will have a multi-threaded server controlled using configuration file (like number of simultaneous connection to make, port number etc.). The server will have respected classes as given in the description of the project.
Here are my relevant projects :
Server-client projects : Multi-threaded game server
Multi-threading projects : Developed NachOS to handle multiprogramming (C++);
Android multithreaded app to segment ECG signals
I am very comfortable with Python. I understand the project requirements completely, and will deliver by the promised deadline.
Thank You.