Friday, 23 September 2016

Easy Web Scraping using PHP Simple HTML DOM Parser Library

Easy Web Scraping using PHP Simple HTML DOM Parser Library

Web scraping is only way to get data from website when  website don’t provide API to access it’s data. Web scraping involves following steps to get data:

    Make request to web page
    Parse/Extract data that you want to scrape from website.
    Store data for final output (excel, csv,mysql database etc).

Web scraping can be implemented in any language like PHP, Java, .Net, Python and any language that allows to make web request to get web page content (HTML text) in to variable. In this article I will show you how to use Simple HTML DOM PHP library to do web scraping using PHP.
PHP Simple HTML DOM Parser

Simple HTML DOM is a PHP library to parse data from webpages, in short you can use this library to do web scraping using PHP and even store data to MySQL database.  Simple HTML DOM has following features:

    The parser library is written in PHP 5+
    It requires PHP 5+ to run
    Parser supports invalid HTML parsing.
    It allows to select html tags like Jquery way.
    Supports Xpath and CSS path based web extraction
    Provides both the way – Object oriented way and procedure way to write code

Scrape All Links

<?php
include "simple_html_dom.php";

//create object
$html=new simple_html_dom();

//load specific URL
$html->load_file("http://www.google.com");

// This will Find all links
foreach($html->find('a') as $element)
   echo $element->href . '<br>';

?>

Scrape images

<?php
include "simple_html_dom.php";

//create object
$html=new simple_html_dom();

//load specific url
$html->load_file("http://www.google.com");

// This will Find all links
foreach($html->find('img') as $element)
   echo $element->src . '<br>';

?>

This is just little idea how you can do web scraping using PHP.Keep in mind that Xpath can make your job simple and fast. You can find all methods available in SimpleHTMLDom documentation page.

Source: http://webdata-scraping.com/web-scraping-using-php-simple-html-dom-parser-library/

Wednesday, 14 September 2016

Powerful Web Scraping Software – Content Grabber Review

Powerful Web Scraping Software – Content Grabber Review

There are many web scraping software and cloud based web scraping services available in the market for extracting data from the websites. They vary widely in cost and features. In this article, I am going to introduce one such advanced web scraping tool “Content Grabber”, which is widely used and the best web scraping software in the market.

Content Grabber is used for web extraction, web scraping and web automation. It can extract content from complex websites and export it as structured data in a variety of formats like Excel Spreadsheets, XML, CSV and databases. Content Grabber can also extract data from highly dynamic websites. It can extract from AJAX-enabled websites, submit forms repeatedly to cover all possible input values, and manage website logins.

Content Grabber is designed to be reliable, scalable and customizable. It is specifically designed for users with a critical reliance on web scraping and web data extraction. It also enables you to make standalone web scraping agents which you can market and sell as your own royalty free web scraping software.

Applications of Content Grabber:

The following are the few applications of Content Grabber:

  •     Data aggregation – for example news aggregation.
  •     Competitive pricing and monitoring e.g. monitor dealers for price compliance.
  •     Financial and Market Research e.g. Make proactive buying and selling decisions by continuously receiving corporate operational data.
  •     Content Integration i.e. integration of data from various sources at one place.
  •     Business Directory Scraping – for example: yellow pages scraping, yelp scraping, superpages scraping etc.
  •     Extracting company data from yellow pages for scraping common data fields like Business Name, Address, Telephone, Fax, Email, Website and Category of Business.
  •     Extracting eBay auction data like: eBay Product Name, Store Information, Buy it Now prices, Product Price, List Price, Seller Price and many more.
  •     Extracting Amazon product data: Information such as Product title, cost, description, details, availability, shipping info, ASIN, rating, rank, etc can be extracted.

Content Grabber Features:

The following section highlights some of the key features of Content Grabber:

1. Point and Click Interface

The Content Grabber editor has an easy to use point and click interface that provides easy point and click configuration. One simply needs to click on web elements to configure website navigation and content capture.

2. Easy to Use

The Content Grabber point and click interface is so simple to use that it can easily be used by beginners and non-programmers. There is certain built in facilities that automatically detect and configure all commands. It will automatically create a list of links, lists of content, manage pagination, handle web pages, download or upload files and capture any action you perform on a web page. You can also manually configure the agent commands, so Content Grabber gives you both simplicity and control.

3. Reliable and Scalable

Content Grabber’s powerful features like testing and debugging, solid error handling and error recovery, allows agent to run in the most difficult scenarios. It easily handles and scrapes dynamic websites built with JavaScript and AJAX. Content Grabber’s Intelligent agents don’t break with most site structure changes. These features enable us to build reliable web scraping agents. There are various configurations and performance tuning options that makes Content Grabber scalable. You can build as many web scraping agents as you want with Content Grabber.

4. High Performance

Multi-threading is used to increase the performance in Content Grabber. Content Grabber uses optimized web browsers. It uses static browsers for static web pages and dynamic browsers for dynamic web pages. It has an ultra-fast HTML5 parser for ultra-fast web scraping. One can use many web browsers concurrently to boost performance.

5. Debugging, Logging and Error Handling

Content Grabber has robust support for debugging, error handling and logging. Using a debugger, you can test and debug the web scraping agents which helps you to build reliable and error free web scraping solutions because most of the issues are addressed at design time. Content Grabber allows agent logging with three detail levels: Log URLs, Log raw HTML, Log to database or file. Logs can be useful to identify problems that occurred during execution of a web scraping agent. Content Grabber supports automatic error handling and custom error handling through scripting. Error status reports can also be mailed to administrators.

6. Scripting

Content Grabber comes with a built in script editor with IntelliSense that one can use in case of some unusual requirements or to fine tune some process. Scripting can be used to control agent behaviour, content transformation, customize data export and delivery and to generate data inputs for agent.

7. Unlimited Web Scraping Agents

Content Grabber allows building an unlimited number of Self-Contained Web Scraping Agents. Self-Contained agents are a standalone executable that can be run independently, branded as your own and distributed royalty free. Content Grabber provides an easy to use and effective GUI to manage all the agents. One can view status and logs of all the agents or run and schedule the agents in one centralized location.

8. Automation

Require data on a schedule? Weekly? Everyday? Each hour? Content Grabber allows automating and publishing extracted data. Configure Content Grabber by telling what data you want once, and then schedule it to run automatically.

And much more

There are too many features that Content Grabber provides, but here are a few more that may be useful and interest you.

  •     Schedule agents
  •     Manage proxies
  •     Custom notification criteria and messages
  •     Email notifications
  •     Handle websites logins
  •     Capture Screenshots of web elements or entire web page or save as PDF.
  •     Capture hidden content on web page.
  •     Crawl entire website
  •     Input data from almost any data source.
  •     Auto scroll to load dynamic data
  •     Handle complex JAVASCRIPT and AJAX actions
  •     XPATH support
  •     Convert Images to Text
  •     CAPTCHA handling
  •     Extract data from non-HTML documents like PDF and Word Documents
  •     Multi-threading and multiple web browsers
  •     Run agent from command line.

The above features come with the Professional edition license. Content Grabber’s Premium edition license is available with the following extra features:

1. Visual Studio 2013 integration

One can integrate Content Grabber to Visual Studio and take advantages of extra powerful script editing, debugging, and unit testing.

2. Remove Content Grabber branding

One can remove Content Grabber branding from the Content Grabber agents and distribute the executable.

3. Custom Design Templates

One can customize the Content Grabber agent user interface design with custom HTML templates – e.g. add your own company branding.

4. Royalty free distribution

One can distribute the Content Grabber agent to anybody without paying royalty fees and can run agents from the command line anywhere.

5. Programming Interface

Programming interfaces like Desktop API, Web API and windows service for building and editing agents.

6. Custom Web Scraping Application Development:

Content Grabber provides API and Visual Studio Integration which developer can use to build custom web scraping applications. It provides full control of the user interface and export functionality. One can develop both Desktop as well as Web based custom web scraping applications using the Content Grabber programming interface. It is a great tool and provides opportunity for developers to build general web scraping applications and sell those to generate revenue.

Are you looking for web scraping services? Do you need any assistance related to Content Grabber? We can probably help you to achieve your scraping-based project goals. We would be more than happy to hear from you.

Source: http://webdata-scraping.com/powerful-web-scraping-software-content-grabber/

Saturday, 3 September 2016

Calculate your ROI on Web Scraping using our ROI Calculator

Calculate your ROI on Web Scraping using our ROI Calculator

Staying atop the competition is a vital thing for the survival and growth of businesses these days. Ever since big data came into the picture, web scraping has become something businesses from every industry has to invest in. If your company is not in a technically advanced industry, web scraping could even be a nightmare to start with. Wondering if going with in-house web scraping is right for you? In house or outsourcing, in the end it’s all about the returns on investment.

ROI Calculator

Considering the numerous factors that determine how much web scraping can cost you, it’s not easy to calculate the ROI on your in-house web scraping.

In house web scraping is certainly a challenging process. If you plan on going down this way, here is a brief list of prerequisites.

Engineers

Technically skilled labour is an essential requirement for web scraping. Since, web scraping techniques are complicated, it needs good programming skills to write, run and maintain the scraping bots. The cost of labour can be one of the drawbacks with doing in house web scraping.

Hardware Resources

Web scraping is a resource hungry process which requires high end servers and lots of bandwidth. Without the adequate resources, you might end up losing important data. The cost of quality servers could easily make you want to reconsider doing web scraping on your own. Not to mention the doubling up of these resources in order to keep the data intact, espcially if you’re looking at large scale.

Maintainability and ukeep of your tech stack

Once you have your servers and other technical components setup, the real deal only starts. You have to ensure availability of your servers, data backups, restoring previous states, failovers, among many other complications associated with managing servers and fixing them up when something goes wrong. You need to allocate resources (both people and hardware) to take care of the above.

Time

Time is something that we cannot really include in the equation when it comes to calculating the returns. But it is definitely a factor that defines if web scraping in house is worth it. Although web scraping is the fastest way to acquire data, the initial setup and maintenance are time consuming and complicated. This could easily lead to conflicts when you have to distribute your time between web scraping and other business activities that are crucial for your company.

Try the ROI Calculator

We came up with an ROI calculator to easily calculate your returns on investment with our web scraping services. Using this, you could easily compare the cost of in house web scraping with PromptCloud’s dedicated web scraping services. Find out how much you can save by going the PromptCloud way.

Source: https://www.promptcloud.com/blog/calculate-roi-on-web-scraping

Saturday, 27 August 2016

Why is a Web scraping service better than Scraping tools

Why is a Web scraping service better than Scraping tools

Web scraping has been making ripples across various industries in the last few years. Newer businesses can employ web scraping to gain quick market insights and equip themselves to take on their competitors. This works like clockwork if you know how to do the analysis right. Before we jump into that, there is the technical aspect of web scraping. Should your company use a scraping tool to get the required data from the web? Although this sounds like an easy solution, there is more to it than what meets the eye. We explain why it’s better to go with a dedicated web scraping service to cover your data acquisition needs rather than going by the scraping tool route.

Cost is lowered

Although this might come as a surprise, the cost of getting data from employing a data scraping tool along with an IT personnel who can get it done would exceed the cost of a good subscription based web scraping service. Not every company has the necessary resources needed to run web scraping in-house. By depending on a Data service provider, you will save the cost of software, resources and labour required to run web crawling in the firm. Besides, you will also end up having more time and less worries. More of your time and effort can therefore go into the analysis part which is crucial to you as a business owner.

Accessibility is high with a service

Multifaceted websites make it difficult for the scraping tools to extract data. A good web scraping service on the other hand can easily deal with bottlenecks in the scraping process when it may arise. Websites to be scraped often undergo changes in their structure which calls for modification of the crawler accordingly. Unlike a scraping tool, a dedicated service will be able to extract data from complex sites that use Ajax, Javascript and the like. By going with a subscription based service, you are doing yourself the favour of not being involved in this constant headache.

Accuracy in results

A DIY scraping tool might be able to get you data, but the accuracy and relevance of the acquired data will vary. You might be able to get it right with a particular website, but that might not be the case with another. This gives uncertainty to the results of your data acquisition and could even be disastrous for your business. On the other hand, a good scraping service will give you highly refined data which is in a ready to consume form.

Outcomes are instant with a service

Considering the high resource requirements of the web scraping process, your scraping tool is likely to be much slower than a reputed service that has got the right infrastructure and resources to scrape data from the web efficiently. It might not be feasible for your firm to acquire and manage the same setup since that could affect the focus of your business.

Tidying up of Data is an exhausting process

Web scrapers collect data into a dump file which would be huge in size. You will have to do a lot of tidying up in this to get data in a usable format. With the scraping tools route, you would be looking for more tools to clean up the data collected. This is a waste of time and effort that you could use in much better aspects of your business. Whereas with a web scraping service, you won’t have to worry about cleaning up of the data as it comes with the service. You get the data in a plug and use format which gives you more time to do better things.

Many sites have policies for data scraping

Sometimes, websites that you want to scrape data from might have policies discouraging the act. You wouldn’t want to act against their policies being ignorant of their existence and get into legal trouble. With a web scraping service, you don’t have to worry about these. A well-established data scraping provider will definitely follow the rules and policies set by the website. This would mean you can be relieved of such worries and go ahead with finding trends and ideas from the data that they provide.

More time to analyse the data

This is so far the best advantage of going with a scraping service rather than a tool. Since all the things related to data acquisition is dealt by the scraping service provider, you would have more time for analysing and deriving useful business decisions from this data. Being the business owner, analysing the data with care should be your highest priority. Since using a scraping tool to acquire data will cost you more time and effort, the analysis part is definitely going to suffer which defies your whole purpose.

Bottom line

It is up to you to choose between a web scraping tool and a dedicated scraping service. Being the business owner, it i s much better for you to stay away from the technical aspects of web scraping and focus on deriving a better business strategy from the data. When you have made up your mind to go with a data scraping service, it is important to choose the right web scraping service for maximum benefits.

Source: https://www.promptcloud.com/blog/web-scraping-services-better-than-scraping-tools

Tuesday, 16 August 2016

ERP Data Conversions - Best Practices and Steps

ERP Data Conversions - Best Practices and Steps

Every company who has gone through an ERP project has gone through the painful process of getting the data ready for the new system. The process of executing this typically goes through the following steps:

(1) Extract or define

(2) Clean and transform

(3) Load

(4) Validate and verify

This process is typically executed multiple times (2 - 5+ times depending on complexity) through an ERP project to ensure that the good data ends up in the new system. If the data is either incorrect, not well enough cleaned or adjusted or loaded incorrectly in to the new system it can cause serious problems as the new system is launched.

(1) Extract or define

This involves extracting the data from legacy systems, which are to be decommissioned. In some cases the data may not exist in a legacy system, as the old process may be spreadsheet-based and has to be created from scratch. Typically this involves creating some extraction programs or leveraging existing reports to get the data in to a format which can be put in to a spreadsheet or a data management application.

(2) Data cleansing

Once extracted it normally reviewed is for accuracy by the business, supported by the IT team, and/or adjusted if incorrect or in a structure which the new ERP system does not understand. Depending on the level of change and data quality this can represent a significant effort involving many business stakeholders and required to go through multiple cycles.

(3) Load data to new system

As the data gets structured to a format which the receiving ERP system can handle the load programs may also be build to handle certain changes as part of the process of getting the data converted in to the new system. Data is loaded in to interface tables and loaded in to the new system's core master data and transactions tables.

When loading the data in to the new system the inter-dependency of the different data elements is key to consider and validate the cross dependencies. Exceptions are dealt with and go in to lessons learned and to modify extracts, data cleansing or load process in to the next cycle.

(4) Validate and verify

The final phase of the data conversion process is to verify the converted data through extracts, reports or manually to ensure that all the data went in correctly. This may also include both internal and external audit groups and all the key data owners. Part of the testing will also include attempting to transact using the converted data successfully.

The topmost success factors or best practices to execute a successful conversion I would prioritize as follows:

(1) Start the data conversion early enough by assessing the quality of the data. Starting too late can result in either costly project delays or decisions to load garbage and "deal with it later" resulting in an increase in problems as the new system is launched.

(2) Identify and assign data owners and customers (often forgotten) for the different elements. Ensure that not only the data owners sign-off on the data conversions but that also the key users of the data are involved in reviewing the selection criteria's, data cleansing process and load verification.

(3) Run sufficient enough rounds of testing of the data, including not only validating the loads but also transacting with the converted data.

(4) Depending on the complexity, evaluate possible tools beyond spreadsheets and custom programming to help with the data conversion process for cleansing, transformation and load process.

(5) Don't under-estimate the effort in cleansing and validating the converted data.

(6) Define processes and consider other tools to help how the accuracy of the data will be maintained after the system goes live.

Source: http://ezinearticles.com/?ERP-Data-Conversions---Best-Practices-and-Steps&id=7263314

Monday, 8 August 2016

How to Scrape a Website into Excel without programming

How to Scrape a Website into Excel without programming

This web scraping tutorial will teach you visually step by step how to scrape or extract or pull data from websites using import.io(Free Tool) without programming skills into Excel.

Personally, I use web scraping for analysing my competitors’ best-performing blog posts or content such as what blog posts or content received most comments or social media shares.

In this tutorial,We will scrape the following data from a blog:

    All blog posts URLs.
    Authors names for each post.
    Blog posts titles.
    The number of social media shares each post received.

Then we will use the extracted data to determine what are the popular blog posts and their authors,which posts received much engagement from users through social media shares and on page comments.

Let’s get started.

Step 1:Install import.io app

The first step is to install import.io app.A free web scraping tool and one of the best web scraping software.It is available for Windows,Mac and Linux platforms.Import.io offers advanced data extraction features without coding by allowing you to create custom APIs or crawl entire websites.

After installation, you will need to sign up for an account.It is completely free so don’t worry.I will not cover the installation process.Once everything is set correctly you will see something similar to the window below after your first login.

Step 2:Choose how to scrape data using import.io extractor

With import.io you can do data extraction by creating custom APIs or crawling the entire websites.It comes equipped with different tools for data extraction such as magic,extractor,crawler and connector.

In this tutorial,I will use a tool called “extractor” to create a custom API for our data extraction process.

To get started click the “new” red button on the right top of the page and then click “Start Extractor” button on the pop-up window.

After clicking  “Start Extractor” the Import.io app internal browser window will open as shown below.

Step 3:Data scraping process

Now after the import.io browser is open navigate to the blog URL you want to scrape data from. Then once you already navigated to the target blog URL turn on extraction.In this tutorial,I will use this blog URL bongo5.com  for data extraction.

You can see from the window below I already navigated to www.bongo5.com but extraction switch is still off.

Turn extraction switch “ON” as shown in the window below and move to the next step.

Step 4:Training the “columns” or specifying the data we want to scrape

In this step,I will specify exactly what kind of data I want to scrape from the blog.On import.io app specifying the data you want to scrape is referred to as “training the columns”.Columns represent the data set I want to scrape(post titles,authors’ names and posts URLs).

In order to understand this step, you need to know the difference between a blog page and a blog post.A page might have a single post or multiple posts depending on the blog configuration.

A blog might have several blog posts,even hundreds or thousands of posts.But I will take only one session to train the “extractor” about the data I want to extract.I will do so by using an import.io visual highlighter.Once the data extraction is turned on the-the highlighter will appear by default.

I will do the training session for a single post in a single blog page with multiple posts then the extractor will extract data automatically for the remaining posts on the “same” blog page.
Step 4a:Creating “post_title” column

I will start by renaming “my_column” into the name of the data I want to scrape.Our goal in this tutorial is to scrape the blog posts titles,posts URLs,authors names and get social statistics later so I will create columns for posts titles,posts URLs,authors names.Later on, I will teach you how to get social statistics for the post URLs.

After editing “my_column” into “post_title” then point the mouse cursor over to any of the Posts title on the same blog page and the visual highlighter will automatically appear.Using the highlighter I can select the data I want to extract.

You can see below I selected one of the blog post titles on the page.The rectangular box with orange border is the visual highlighter.

The app will ask you how is the data arranged on the page.Since I have more than one post in a single page then you have rows of repeating data.This blog is having 25 posts per page.So you will select “many rows”.Sometimes you might have a single post on a page for that case you need to select “Just one row”.

Source: http://nocodewebscraping.com/web-scraping-for-dummies-tutorial-with-import-io-without-coding/

Wednesday, 3 August 2016

Invest in Data Extraction to Grow Your Business

Invest in Data Extraction to Grow Your Business

Automating your employees’ processes can help you increase productivity while keeping the cost of used resources at a minimum. This can help you focus your time and money in much needed areas of your company so that you can thrive in your industry. Data extraction can help you achieve automation by targeting online data sources (websites, blogs, forums, etc) for information and data that can be useful to your business. By using software rather than your employees, you can oftentimes get more accurate data and more thorough information that people may miss. The software can handle the volume that you need and will deliver the results that you desire to help your company.
See the Power of Data Extraction Online

To see all of the ways that data extraction tools and software can benefit your business, visit Connotate.com. There you can read about the features of the software, practical uses for businesses and also schedule a demo before you buy.

Source: http://www.connotate.com/invest-in-data-extraction-to-grow-your-business/