Do I need to use inheritance and classes for my OOP webscraper?
I see no benefit to any of these approaches. You're just making yourself write more code. All you need is one class that analyzes a website entered from a user. If you have a predefined list of websites that you need to scrape, then iterate over each website instead of using a class for each one.
Since you say there are two ways of accomplishing this task, you can have the user pass in what mode they want to use to get the information. Something like
website = Scraper(&quot;https://www.google.com&quot;, &quot;DIRECT&quot;)
website = Scraper(&quot;https://www.website_here.com/articles/article.pdf&quot;, &quot;PDF&quot;)

Then you build your class around it. You want your code to be easily accessible and usable by a user. As a first time user, I would have no idea if I should use Website1 or Website2. What are the differences? Why should I use one over the other? You should always look at your code through the lens of a user.