VBA - scraping websites videos | Excel VBA Part 48 - Scraping Multiple Web Pages

Posted by Andrew Gould on 17 November 2016

PLEASE NOTE - The design of the website used in this video has changed since the video was recorded. This means that the code shown in the video no longer works. The downloadable file contains both the original version of the code and a version which works with the current version of the website. What's better than scraping one web page? Scraping lots of them with the same procedure, of couse! This video explains how to loop over multiple pages using Microsoft's HTML and XML object libraries. You'll learn about HTML tags and classes, the Document Object Model and how to loop over elements on a page.

You can download any files that you need to follow the video here.

You can increase the size of the video:

Full screen mode for YouTube

You can view the video in full screen mode as shown on the left, using the icon at the bottom right of the frame.

You can also increase the quality of the video:

Changing resolution

You can improve the resolution of the video using another icon at the bottom right of the frame. This will slow down the connection speed, but increase the display and sound quality. This icon only becomes visible when you start playing the video.

Finally, if nothing happens when you play the video, check that you're not using IE in compatibility view.

This page has 1 thread Add post
12 Dec 17 at 16:30

This is a very interesting and helpful video.  Thank you for making this information available to us.  

I have one problem at the outset.  I downloaded your associated file, but, when I try to run the GetVideoPage macro, I get a runtime error.  The code is 8007005, "access denied."  The file is not altered in any way.  This error appears at the line that reads "XMLReq.send".  I have tried the same macro using a different workbook and a different URL with the same result. 

I am using Excel 2016 and running it on W10 Pro 64bit.  

What, if anything, am I doing wrong?  

14 Dec 17 at 08:45

Hi, I'm almost certain that this is due to us upgrading the website to use https since the video was recorded.  If you alter the code so that the URL begins with https instead of just http I believe it will work. I hope that helps!

14 Dec 17 at 09:28

Thank you.  That solved the problem.  Everything works perfectly now.