Find Jobs
Hire Freelancers

Node.js/Selenium Web Crawler Project

$750-1500 USD

En curso
Publicado hace más de 7 años

$750-1500 USD

Pagado a la entrega
Product Overview/Background Our product is an iPhone app written in Objective-C. The iPhone app functions as a client which makes request to our various server-side application, one of them being our beauty appointment booking system (written in Node.js). Whenever a user wants to book a beauty appointment in our app, they go to the salon's profile page and click on the service they'd like. This click sends a request to our Booking Server (via WebSockets), and then our Booking server uses Selenium to crawl the specific website for that salon to automatically book the appointment and report it back to the iPhone client. Additionally, our booking server makes use of BrowserStack to handle processing multiple browser sessions simultaneously in the cloud. Task for You We're looking for engineers who can support the crawlers for the various salon systems that we work with. There are number of salon software companies, and our automatic booking system needs to support all of them. For your this project, we'd like you to implement support for just one of the salon software providers. We will provide you with a list of test cases to test against. You will be required to implement three general functions and ensure they work across the set of test cases: • getSalonData — this function just collects the names of the services, prices, technicians, and returns them to the server • searchBookings — this function receives a date and service name as an argument and then crawls the website and returns all available appointment slots • requestBooking — this function receives a date, service, time, and client contact info as arguments then crawls the website and books the appointment, returning the results to the client. Structure/Technical Details We've already implemented a few of these, so we have examples already in the codebase. Once you have signed the appropriate documents and have been on-boarded, we can grant you access to our GitHub repository, and Asana task management. We already have a codebase laid out for the crawlers, you just need to extend it by adding on support for the additional required system and making sure it can work with the current system. Example Crawler Code See the attached [login to view URL] for an example of a crawler made for one of the booking systems. This will give you an example of the kind of routines we do (e.g. using jQuery to manipulate the DOM, click element, access dropdown menus, send data back to clients, etc). Requirements Experience with JavaScript / Node.js Experience w jQuery, DOM manipulation, HTML Familiar with the concept of (Web)Sockets Comfortable with Git Must have a GitHub account (provide us your username so we can show you sample code) Experience with Selenium Web Driver JS Comfortable using Asana for coordinating with the team First Code Handin due Friday, September 23rd by 5 PM PST Entries submitted after September 23rd , 5 PM PST will be disqualified Please make sure to test your code against the provided test cases PRIOR to this date. Engineering Team will review and test your code the week of Sept 19. You will be expected to be available to fix any issues revealed during review and make sure that your code passes all tests by Friday, Sept 30th at 5 PM PST Code that does not pass the tests by Friday, Sept 30th at 5 PM PST will be disqualified Payment Details Project fee will be paid upon successful passing of all test cases, as confirmed by the Engineering Team All code must be submitted for review by Friday, September 23, at 5 PM PST. Late entries will be disqualified and will not receive payment. All code must be passing test cases by no later than Friday, September 30th at 5 PM PST in order to receive payment for the project. Next Steps Please review the Requirements and make sure that you meet them. If you are interested in working on this project, please do the following: Include links to any crawler/Selenium projects you’ve done Provide your GitHub user name
ID del proyecto: 11514505

Información sobre el proyecto

9 propuestas
Proyecto remoto
Activo hace 8 años

¿Buscas ganar dinero?

Beneficios de presentar ofertas en Freelancer

Fija tu plazo y presupuesto
Cobra por tu trabajo
Describe tu propuesta
Es gratis registrarse y presentar ofertas en los trabajos

Sobre este cliente

Bandera de UNITED STATES
Sunnyvale, United States
4,7
27
Forma de pago verificada
Miembro desde jun 4, 2009

Verificación del cliente

¡Gracias! Te hemos enviado un enlace para reclamar tu crédito gratuito.
Algo salió mal al enviar tu correo electrónico. Por favor, intenta de nuevo.
Usuarios registrados Total de empleos publicados
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Cargando visualización previa
Permiso concedido para Geolocalización.
Tu sesión de acceso ha expirado y has sido desconectado. Por favor, inica sesión nuevamente.