Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import requests
- from bs4 import BeautifulSoup
- import re
- from datetime import datetime
- def extrair_informacao(url):
- # Faz uma solicitação HTTP para a URL fornecida
- response = requests.get(url)
- # Verifica se a solicitação foi bem-sucedida
- if response.status_code == 200:
- # Cria um objeto BeautifulSoup para fazer o parsing do conteúdo HTML
- soup = BeautifulSoup(response.content, 'html.parser')
- # Extrai o título da página
- title = soup.title.string
- # Extrai a primeira frase de texto da página
- first_paragraph = soup.find('p').text.strip()
- # Extrai o texto da seção content-head__subtitle
- subtitle = soup.find(class_='content-head__subtitle').text.strip()
- # Retorna as informações extraídas
- return title, first_paragraph, subtitle, url
- else:
- print("Falha ao fazer a solicitação HTTP.")
- return None, None, None, None
- def main():
- # Solicita ao usuário que insira a URL
- url = input("Por favor, insira a URL da página que deseja extrair informações: ")
- # Extrai informações da página
- title, first_paragraph, subtitle, url = extrair_informacao(url)
- # Imprime as informações extraídas
- if title and first_paragraph and subtitle and url:
- print("", title)
- print("", first_paragraph)
- print("", subtitle)
- print("URL da página:", url)
- # Remove caracteres inválidos do título da página para usar como nome do arquivo
- filename = re.sub(r'[^\w\s-]', '', title)
- filename = filename.replace(' ', '_') # Substitui espaços em branco por underscore
- filename += f"_{datetime.now().strftime('%Y-%m-%d-%H-%M-%S')}.html"
- # Exporta as informações para um arquivo .html
- with open(filename, 'w', encoding='utf-8') as file:
- file.write("<!DOCTYPE html>\n")
- file.write("<html>\n<head>\n<title>" + title + "</title>\n")
- file.write("<style>\n")
- file.write("body { font-family: Arial, sans-serif; }\n")
- file.write(".subtitle { color: blue; }\n")
- file.write("</style>\n")
- file.write("</head>\n<body>\n")
- file.write("<h1>" + title + "</h1>\n")
- file.write("<p>" + first_paragraph + "</p>\n")
- file.write("<p class='subtitle'>" + subtitle + "</p>\n")
- file.write("<p>URL da página: <a href='" + url + "' target='_blank'>" + url + "</a></p>\n")
- file.write("</body>\n</html>")
- print(f"As informações foram exportadas para o arquivo: {filename}")
- else:
- print("Não foi possível extrair informações da página.")
- if __name__ == "__main__":
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement