Как получить html элементов при просмотре веб-страниц? - PullRequest
1 голос
/ 26 апреля 2020

Я пытаюсь получить значения с веб-страницы. Мой код python в настоящее время выглядит следующим образом ...

from lxml import html
import requests

if __name__ == "__main__":
    page = requests.get('https://www.example.com/example')
    tree = html.fromstring(page.content)
    print(tree.xpath('//div[@class="previous-crashes"]/text()'))

Вот пример html, который я пытаюсь получить. Итак, в теории, я хочу список, содержащий 12,54x, 5x, 1,06x, 12,54x, 1,93x. С текущим кодом всегда печатается пустой список.

Ответы [ 3 ]

0 голосов
/ 26 апреля 2020

Вы можете попробовать:

from bs4 import BeautifulSoup
import requests

req = requests.get("https://domain.tld")
soup = BeautifulSoup(req.text, 'html')
pointers = soup.findall("span", {"class": "pointer"})
for pointer in pointers:
    print(pointer.text)
0 голосов
/ 26 апреля 2020
from lxml import html
import requests

page = requests.get('https://www.example.com/')
doc = html.fromstring(page.content)

elements = doc.find_class('previous-crashes')
for el in elements:
    pointers = el.find_class('pointer')
    for pointer in pointers:
        print(pointer.text_content())

Это даст вам значения диапазона текста из изображения HTML, которое вы связали.

0 голосов
/ 26 апреля 2020

Я не совсем уверен, но, возможно, на веб-сайте есть некоторые меры по предотвращению удаления, и поэтому вы вернулись с пустым файлом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...