Как скрести, когда таблицы данных не отображаются в источнике страницы - PullRequest
1 голос
/ 08 июня 2019

Я хотел бы собрать все времени выполнения (а не только первые 10 результатов) из таблиц данных на https://www.ijsselsteinloop.nl/uitslagen-2019. Однако данные, отображаемые на веб-странице, не отображаются в Исходный текст страницы. Под каждой таблицей данных есть гиперссылка ("hier"). Они ссылаются на полные страницы таблицы данных. Но этих ссылок также нет в источнике страницы.

Любые предложения или отрывки кода, как очистить эти данные (с помощью Python и BeautifulSoup или Scrapy).

Ответы [ 2 ]

1 голос
/ 08 июня 2019

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

import requests
from bs4 import BeautifulSoup as bs
import pandas as pd

r = requests.get('https://www.ijsselsteinloop.nl/uitslag/2019/index.html')
soup = bs(r.content, 'lxml')
links = ['https://www.ijsselsteinloop.nl/uitslag/2019/' + item['href'] for item in soup.select('[href^=uitslag]')]

for link in links:
    table = pd.read_html(link)[0]
    print(table)
0 голосов
/ 08 июня 2019

Вы можете использовать BeautifulSoup.Сначала:

uClient = uReq(my_url)
page_html = uClient.read()
uClient.close()
page_soup = soup(page_html,"html.parser")

А затем используйте функцию find.All (чтобы получить каждый тр).И затем используйте для цикла, и снова введите find ('td'), чтобы получить каждую строку

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