Solicitações - Web Scraping usando solicitações

Já vimos como podemos obter dados de uma determinada URL usando a biblioteca de solicitações Python. Tentaremos eliminar os dados do site deTutorialspoint que está disponível em https://www.tutorialspoint.com/tutorialslibrary.htm usando o seguinte -

  • Biblioteca de Pedidos
  • Bela biblioteca de sopa de python

Já instalamos a biblioteca Requests, vamos agora instalar o pacote Beautiful soup. Aqui está o site oficial debeautiful soup disponível em https://www.crummy.com/software/BeautifulSoup/bs4/doc/ caso você queira explorar mais algumas funcionalidades da bela sopa.

Instalando Beautifulsoup

Veremos como instalar a Beautiful Soup abaixo -

E:\prequests>pip install beautifulsoup4
Collecting beautifulsoup4
Downloading https://files.pythonhosted.org/packages/3b/c8/a55eb6ea11cd7e5ac4ba
cdf92bac4693b90d3ba79268be16527555e186f0/beautifulsoup4-4.8.1-py3-none-any.whl
(
101kB)
|████████████████████████████████| 102kB 22kB/s
Collecting soupsieve>=1.2 (from beautifulsoup4)
Downloading https://files.pythonhosted.org/packages/81/94/03c0f04471fc245d08d0
a99f7946ac228ca98da4fa75796c507f61e688c2/soupsieve-1.9.5-py2.py3-none-any.whl
Installing collected packages: soupsieve, beautifulsoup4
Successfully installed beautifulsoup4-4.8.1 soupsieve-1.9.5

Agora temos a biblioteca de solicitações do python e a bela sopa instalada.

Vamos agora escrever o código, que eliminará os dados do URL fornecido.

Raspagem da web

import requests
from bs4 import BeautifulSoup
res = requests.get('https://www.tutorialspoint.com/tutorialslibrary.htm')
print("The status code is ", res.status_code)
print("\n")
soup_data = BeautifulSoup(res.text, 'html.parser')
print(soup_data.title)
print("\n")
print(soup_data.find_all('h4'))

Usando a biblioteca de solicitações, podemos buscar o conteúdo da URL fornecida e uma bela biblioteca de sopas ajuda a analisá-lo e buscar os detalhes da maneira que quisermos.

Você pode usar uma bela biblioteca de sopa para buscar dados usando tag Html, classe, id, seletor css e muitas outras maneiras. A seguir está a saída que obtemos, em que imprimimos o título da página e também todas as tags h4 na página.

Resultado

E:\prequests>python makeRequest.py
The status code is 200
<title>Free Online Tutorials and Courses</title>
[<h4>Academic</h4>, <h4>Computer Science</h4>, <h4>Digital Marketing</h4>, 
<h4>Monuments</h4>,<h4>Machine Learning</h4>, <h4>Mathematics</h4>, 
<h4>Mobile Development</h4>,<h4>SAP</h4>, 
<h4>Software Quality</h4>, <h4>Big Data & Analytics</h4>, 
<h4>Databases</h4>, <h4>Engineering Tutorials</h4>, 
<h4>Mainframe Development</h4>, 
<h4>Microsoft Technologies</h4>, <h4>Java Technologies</h4>,
<h4>XML Technologies</h4>, <h4>Python Technologies</h4>, <h4>Sports</h4>, 
<h4>Computer Programming</h4>,<h4>DevOps</h4>, <h4>Latest Technologies</h4>, 
<h4>Telecom</h4>, <h4>Exams Syllabus</h4>, 
<h4>UPSC IAS Exams</h4>, 
<h4>Web Development</h4>,
<h4>Scripts</h4>, <h4>Management</h4>,<h4>Soft Skills</h4>, 
<h4>Selected Reading</h4>, <h4>Misc</h4>]