Как очистить исходный код страницы, не нажимая кнопку «Развернуть»? - PullRequest
0 голосов
/ 14 апреля 2019

На этом сайте есть кнопка «Показать больше».Чтобы загрузить больше данных из таблицы.Но эти данные, похоже, загружаются с самого начала, потому что я могу щелкнуть по ним и развернуть таблицу даже в автономном режиме.

Есть ли способ очистить весь исходный код за один раз, не нажимая эту кнопку многораз в селене?Поскольку кажется, что вся таблица загружается изначально, когда страница загружается впервые.

driver.get_source в этом случае показывает не все, а только то, что отображается при открытии браузера.

Использование Python, Selenium с Google Chrome.

1 Ответ

0 голосов
/ 15 апреля 2019

Если на самом деле все данные загружаются при запуске, то их, несомненно, можно найти, посмотрев на DOM (на тег или, возможно, любой другой тег, содержащий данные). Простой способ сделать это - открыть консоль (F12) и использовать инструмент проверки элементов, предоставляемый вашим браузером

Теперь, чтобы ответить на ваш вопрос, я собираюсь очистить данные с помощью BeautifulSoup в найденном месте (теге). Я видел, что очистка с помощью Selenium во многом схожа с BeautifulSoup, так что вы можете просто получить концепцию

Например, ваша таблица находится в div (со случайными атрибутами, скажем, классом с именем randomclass). Тэг таблицы - «ul», и каждая запись хранится в «li» или, в частности, в «li» .text ()

Чтобы выбрать div:

selected_div = soup.find('div', attrs={'class': 'randomclass'})

Чтобы выбрать таблицу внутри div:

table = selected_div.find('ul')

Чтобы перебрать строки таблицы и управлять данными:

for li in table.find_all('li'):
        mylist.append(li.text())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...