【问题标题】:python requests-html get id value of elementpython requests-html 获取元素的id值
【发布时间】:2020-08-04 16:53:15
【问题描述】:

我一直在玩一个取自这里的例子: https://stackoverflow.com/a/61408325

这是有效的并且非常有帮助,但我正在努力处理 requests-html 文档。 在这个例子中是否可以获取元素的 id 值?

from requests_html import AsyncHTMLSession
from collections import defaultdict
import pandas as pd 


url = 'https://www.flashscore.com/football/england/premier-league-2018-2019/results/'

asession = AsyncHTMLSession()

async def get_scores():
    r = await asession.get(url)
    await r.html.arender()
    return r

results = asession.run(get_scores)
results = results[0]

times = results.html.find("div.event__time")
home_teams = results.html.find("div.event__participant.event__participant--home") 
scores = results.html.find("div.event__scores.fontBold")
away_teams = results.html.find("div.event__participant.event__participant--away")
event_part = results.html.find("div.event__part")


dict_res = defaultdict(list)

for ind in range(len(times)):
    dict_res['times'].append(times[ind].text)
    dict_res['home_teams'].append(home_teams[ind].text)
    dict_res['scores'].append(scores[ind].text)
    dict_res['away_teams'].append(away_teams[ind].text)
    dict_res['event_part'].append(event_part[ind].text)

df_res = pd.DataFrame(dict_res)

【问题讨论】:

    标签: python python-requests-html


    【解决方案1】:

    我设法以一种我不知道它是否最合适的方式获得了 id。 我所做的是搜索整个游戏的

    match_div = results.html.find("div.event__match")
    

    然后从它的属性中获取id

    for ind in range(len(times)):
        id = match_div[ind].attrs['id']
    

    我认为这一定是一种更“直接”的方式,但没有达到目标

    【讨论】:

      猜你喜欢
      • 2023-03-07
      • 1970-01-01
      • 2019-01-11
      • 2020-08-22
      • 1970-01-01
      • 2021-09-07
      • 1970-01-01
      • 2015-09-11
      相关资源
      最近更新 更多