Я пытаюсь просканировать страницу коммитов Github, чтобы провести некоторый анализ. Страница здесь
НИТИ-8569
Однако есть два тега, называемых js-diff -gressive-container, и у каждого есть много дочерних тегов. Смотри ниже
Снимок HTML-страницы
Когда я использую urllib2.Request () и urllib2.urlopen () для получения html-страницы и использую beautifulsoup для анализа html-кода, кажется, что я могу получить только первый тег "js-diff -gressive-container" и его дочерний тег. Для второго я получу тег, класс которого "js-diff -gressive-retry".
Код синтаксического анализа здесь:
for tag in soup.find_all('div', class_='js-diff-progressive-container'):
print 1
for div in tag.find_all('div'):
id = div.get('id')
if id:
id = id.split('-')
print id
if id[0] == 'diff':
div2 = div.find_all('div')
class_div = div2[0]
if class_div.get('data-path'):
changed_class.append(class_div.get('data-path'))
Кто-то сказал мне, что я не могу получить весь HTML-код сразу, так как этот тег загружается динамически. Как я могу получить весь HTML-код страницы?