Web scraping is an automatic method to obtain large amounts of data from websites. Generally, web scrapping is used to obtain large amounts of data to train models in Machine Learning. There are many different ways to perform web scraping to obtain data from websites. These include using online services, particular APIs or even creating your code for web scraping from scratch.
Following are some popular languages for web scrapping:-
-
Python (most recommended)
-
Javascript
-
Java
-
C++
-
BeautifulSoup
>>> from bs4 import BeautifulSoup >>> url = 'https://hashnode.com/' >>> page = requests.get(URL, headers=headers) >>> soup = BeautifulSoup(page.content, "html.parser")
-
Scrapy
>>> import scrapy
-
Selenium
>>> from selenium import webdriver >>> from selenium.webdriver.common.by import By >>> from selenium.webdriver.common.keys import Keys
-
Requests
>>> import requests >>> url = 'https://hashnode.com/' >>> r = requests.get(url)
-
Urlib3
>>> import urllib3 >>> http = urllib3.PoolManager() >>> r = http.request('GET', 'http://httpbin.org/robots.txt') >>> r.status 200 >>> r.data 'User-agent: *\nDisallow: /deny\n'
-
Lxml
>>> from lxml import etree as et >>> root = et.Element('html', version="5.0") et.SubElement(root, 'head') et.SubElement(root, 'title', bgcolor="red", fontsize='22') et.SubElement(root, 'body', fontsize="15") >>> print (et.tostring(root, pretty_print=True).decode("utf-8"))
-
Mechanical Soup
>>> import mechanicalsoup >>> browser = mechanicalsoup.StatefulBrowser() >>> browser.open("http://hashnode.com")