Python - очистить Javascript с помощью bs4 и распечатать значение - PullRequest
0 голосов
/ 05 января 2019

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

HTML-код выглядит следующим образом:

<script type="text/javascript">
                new Countdown('countdown_timer', '1547161260', 'https://stackoverflow.com/');
            </script>

и я начал ее очищать, которую мне удалось очистить, используя:

try:
    time_countdown_tag = bs4.find_all('script', {'type': 'text/javascript'})
except Exception:
    time_countdown_tag = []

for countdown in time_countdown_tag:
    if 'new Countdown' in countdown.text.strip():
        print(countdown)

который мой вывод:

<script type="text/javascript">
                new Countdown('countdown_timer', '1547161260', 'https://stackoverflow.com/');
            </script>

Однако в данном случае я хочу напечатать число внутри параметров, которое является 1547161260 - я был бы признателен за любую помощь, чтобы иметь возможность печатать только число (эпоха ) если это возможно?

1 Ответ

0 голосов
/ 05 января 2019

Вы можете использовать регулярные выражения, чтобы соответствовать части JS, которая содержит положительное целое число:

import re
output = """<script type="text/javascript">
                new Countdown('countdown_timer', '1547161260', 'https://stackoverflow.com/');
            </script>"""
re.findall("\d+", output)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...