Python 用漂亮的汤取统计数据
我正在使用此页面: 获取右侧给出的统计信息。我在下面附上了一个屏幕截图 我使用了以下函数来获取数据。我已经创建了soup并将其作为参数传递给下面的函数Python 用漂亮的汤取统计数据,python,web-scraping,html-parsing,beautifulsoup,Python,Web Scraping,Html Parsing,Beautifulsoup,我正在使用此页面: 获取右侧给出的统计信息。我在下面附上了一个屏幕截图 我使用了以下函数来获取数据。我已经创建了soup并将其作为参数传递给下面的函数 def fetchStats(soup): for i in soup.findAll("div", {"class" : "module", "id" : "season-stats"}): for index in i.findAll("div", {"class" : "module-content"}):
def fetchStats(soup):
for i in soup.findAll("div", {"class" : "module", "id" : "season-stats"}):
for index in i.findAll("div", {"class" : "module-content"}):
for item in index.findAll("ul", style=False):
li = item.findAll("li", {"class" : "major"})
print item.getText()
break
break
但它并没有像我想要的那样工作。我需要将团队的所有参数存储在一个字典中,字典的键中是团队名称,它的值有两个成员的元组-参数名称和它的值,如
dic = {"Team 1 Name": [("Disposlas",311), ("Kicks", 190) .....], "Team 2 Name" : [("Disposlas",315), ("Kicks", 224) .....]}
请帮帮我。我们的想法是获取所有主队统计数据、客队统计数据和统计数据名称,并将它们放在单独的列表中,然后: 印刷品:
{u'Carlton': [(u'Disposals', u'315'),
(u'Kicks', u'224'),
(u'Handballs', u'91'),
(u'Free Kicks', u'22'),
(u'Clearances', u'39'),
(u'Centre', u'13'),
(u'Stoppages', u'26'),
(u'Inside 50', u'40'),
(u'Marks in 50', u'8'),
(u'Contested Possessions', u'127'),
(u'Tackles', u'59'),
(u'Hit-Outs', u'23'),
(u'Interchanges', u'111')],
u'Fremantle': [(u'Disposals', u'311'),
(u'Kicks', u'190'),
(u'Handballs', u'121'),
(u'Free Kicks', u'14'),
(u'Clearances', u'38'),
(u'Centre', u'10'),
(u'Stoppages', u'28'),
(u'Inside 50', u'47'),
(u'Marks in 50', u'13'),
(u'Contested Possessions', u'124'),
(u'Tackles', u'63'),
(u'Hit-Outs', u'75'),
(u'Interchanges', u'96')]}
仅供参考,您可以在此处阅读有关这些
select()
调用的更多信息:。您可能应该发布HTML。查看链接,它们是3个无序列表(UL元素)。我会把这三个都放到数组中,然后把它们合并成一个。非常感谢,先生,这非常有用。我还学会了如何使用bs4。谢谢again@Anand我很喜欢写它,谢谢你做了一个有趣的任务:)@Anand谢谢,请确保你理解代码中的所有内容。否则就没什么用了。先生,老实说,我能理解你给我的90%的密码。我需要时间,想学习zip
。如果我有问题,我会好好学习并写在这里。你用了ul#主队统计数据>li
,我也要研究一下
{u'Carlton': [(u'Disposals', u'315'),
(u'Kicks', u'224'),
(u'Handballs', u'91'),
(u'Free Kicks', u'22'),
(u'Clearances', u'39'),
(u'Centre', u'13'),
(u'Stoppages', u'26'),
(u'Inside 50', u'40'),
(u'Marks in 50', u'8'),
(u'Contested Possessions', u'127'),
(u'Tackles', u'59'),
(u'Hit-Outs', u'23'),
(u'Interchanges', u'111')],
u'Fremantle': [(u'Disposals', u'311'),
(u'Kicks', u'190'),
(u'Handballs', u'121'),
(u'Free Kicks', u'14'),
(u'Clearances', u'38'),
(u'Centre', u'10'),
(u'Stoppages', u'28'),
(u'Inside 50', u'47'),
(u'Marks in 50', u'13'),
(u'Contested Possessions', u'124'),
(u'Tackles', u'63'),
(u'Hit-Outs', u'75'),
(u'Interchanges', u'96')]}