我正在尝试从html page中提取一些数据(奇数)。
数据包含在代表表格的标签<section class="event-list">
中。
我的问题是,当我尝试提取此标签时,我以None
作为答案,而我希望获得所有包含在名为<section>
的标签中的数据。
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import requests
from bs4 import BeautifulSoup
import csv
#Import htlm from winamax for soccer
winamax_soccer_datas = requests.get('https://www.winamax.fr/paris-sportifs/sports/1/')
contenu_winamax_soccer_datas = BeautifulSoup(winamax_soccer_datas.content, 'lxml')
title = contenu_winamax_soccer_datas.title
print(title); print("\n")
winamax_soccer_odds = contenu_winamax_soccer_datas.find('section', attrs={'class': "event-list"})
print(winamax_soccer_odds)
答案 0 :(得分:0)
您知道,网页内的内容会生成静态或/和动态。当您在网络浏览器(例如chrome)中使用查看页面源文件选项时,您只会获得用于创建页面的原始HTML ,而不是表格内容产生动态。
当您使用request.get()
时,会得到静态HTML内容,并且<section class="event-list">
会动态生成,因此结果为None
。
我希望它可以帮助您:)
答案 1 :(得分:0)
您知道PHP吗?如果是,则可以使用此包将代码导入DOM,然后提取数据https://github.com/samacs/simple_html_dom
您的案例示例:
include('simple_html_dom.php');
$data = '<section class="event-list">';
$html = str_get_html($data);
foreach($html->find('section') as $e){
$classname = $e->class;
}