Как извлечь текст из вложенного тега в Beautiful Soup? - PullRequest
0 голосов
/ 24 июня 2019

Я надеюсь проанализировать результаты поиска в сети и получить первые данные, которые появятся.Как указать конкретный путь HTML для извлечения текста?

import requests
import lxml
from bs4 import BeautifulSoup

city = "Potomac"
suffix = "Weather"
query = city + " " + suffix

url = "https://www.google.com/search?q=" + query

# Now have the best URL for a city
results = requests.get(url)

# Extract all content
src = results.content

# Get HTML soup of all content on that page
soup = BeautifulSoup(src, "lxml")
# print(soup.prettify())

# Try to find and print specific places
precip = soup.findAll("span", attrs = {"id": "wob_pp"})

Я ожидал найти все теги span (которые являются тегом данных, которые я пытаюсь извлечь), однако многие из вложенныхтеги span не отображаются.

1 Ответ

0 голосов
/ 25 июня 2019

Вы должны запросить через HTTP-заголовок.Заголовки HTTP позволяют клиенту и серверу передавать дополнительную информацию вместе с запросом или ответом.

results = requests.get(url, headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...