#python #web-scraping #beautifulsoup
Вопрос:
Я просто пытаюсь очистить заголовок входной страницы Википедии, но я получаю Bad Title
после запуска
Вот код
import requests from bs4 import BeautifulSoup wiki = input('Enter the wiki:') url = "https://en.wikipedia.org/wiki/{wiki}" response = requests.get(url) soup = BeautifulSoup(response.content, 'html.parser') title = soup.find(id="firstHeading") print(title.string)
Я хотел в конечном итоге просмотреть всю страницу, но, похоже, не могу пройти мимо печати заголовка
Комментарии:
1. Ваше назначение URL -адресу должно быть строкой f
Ответ №1:
Вам нужно будет добавить префикс к вашей строке, f
чтобы она {wiki}
была правильно проанализирована. Вероятно, вам также потребуется закодировать URL-адрес, чтобы правильно обрабатывать специальные символы, например пробелы. Например:
import urllib.parse import requests from bs4 import BeautifulSoup wiki = input('Enter the wiki:') url = f"https://en.wikipedia.org/wiki/{urllib.parse.quote(wiki)}" response = requests.get(url) soup = BeautifulSoup(response.content, 'html.parser') title = soup.find(id="firstHeading") print(title.string)