Find Jobs
Hire Freelancers

.Net port of Portia Project(github-Python) - Visual Web Scraping

$30-250 USD

In Progress
Posted over 9 years ago

$30-250 USD

Paid on delivery
Write a .net port, in C#, of the Portia project, that can be found on [login to view URL] . Video demo here:[login to view URL] Introduction: - I have a web crawler that is used to scrape information from some websites, and i compile the information to a site I have. I work on this project on my own on weekends, and I am having a big problem that, very often, the websites that I scrape change the layout, or have variable layouts, like templates in Portia understanding. I need a easy way of updating this templates for a website, i a way that i can save as a project, and call this project on my crawler to extract the data of given urls, or html string texts. Given this idea, I think a Portia-like implementation, would be great. And, as I already have a crawler, I would not need the advanced crawler based on 'Scrapy'. I just need a way to create the scraper project for a site while navigate in the site inside the webapplication, and a way to extract the data later in my crawler, by calling a class library, passing project name and url (or html string), and get the existing propertys of the extraction. Key features: - Fully written in C#; - 2 Projects: - One WebApplication for visually build scraping templates for a given site project. Generally, for each site project, I will have a template for listing page and one for details page, but both can have template variations, depending type of product, category, or cases where DOM/Xpaths changes when product has less or more information. - One class library, that given a url or given a html string, and a project (created on the web application) name, i can extract all data based on the extraction rules created on the web project. I want to call this class library from my existing crawler project. Expectative: - Web Application Expectations: -> Same features as Portia web application, considering: -> Easy configuration for projects directory path; -> List Projects feature; -> Possibility of 'Create new Project', 'Load Project', 'Save Project', 'Close Project(to select other project, initial app state)'; -> Visually navigate the site and select the information to be crawled, with possibility to customize rules, like Portia; -> Possibility to have a list of starter urls. In this list i will keep the most common result pages that will list me produtcs. So can be easy to navigate directly for the listing page (to build that template) and after to the detail page (and build another template). -> Possibility to create templates exactly as Portia. - Class Library Expectations: -> Public, easy to be used from other assemblies; -> Easy to use and fast; -> Can use HtmlAgilityPack and CsQuery; -> Possibility to pass/set a HttpWebRequest (in case im using a proxy or different agent headers); -> Possible input parameters for extraction method: -> string 'project name' and Uri'url to extract'; -> string 'project name' and string 'html'; -> string 'project name', string 'template name', and Uri'url to extract'; -> string 'project name', string 'template name', and string 'html'; -> Output: -> List of propertys, ready to be indexed by my crawler as soon it call/executes the extraction. I'm thinking in some type of dictionary, that i can search if the key exists, so I can pick the value and store on my data storage. -> Would be great if the result was a context, with a field with the extractions dictionary, and other fields that list errors occured during parse, template used, and other relevant informations.
Project ID: 6740200

About the project

Remote project
Active 10 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
User Avatar
Dear sir , I have created several systems before , I am ready to complete your application and i have strong knowledge with web development since 2007 using .net , sql and MVC ready to start working now thanks and regards
$155 USD in 10 days
5.0 (13 reviews)
3.3
3.3

About the client

Flag of BRAZIL
Buenos Aires, Brazil
5.0
1
Payment method verified
Member since Nov 16, 2014

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.