使用BeautifulSoup从类中查找ID

2024-09-28 21:40:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用beauthoulsoup返回一个使用Selenium单击的单元格的ID。每次加载页面时,ID都会发生变化,因此我尝试根据类查找特定的单元格:

<table cellspacing="0" role="presentation" id="x-auto-667" class=" x-btn x-component x-btn-text-icon" style="margin-right: 0px;">

我试过很多种: 汤。找(class='x-btn x-component x-btn-text-icon')['id']

没有成功。我很感激你的帮助。在


Tags: textidautoseleniumtable页面presentationclass
2条回答

根据BeautifulSoup documentation,有一个搜索CSS类的快捷方式:为attrs参数传递一个字符串。当然,当您这样做时,您必须给它一个名称,否则字符串将被误解为name。简而言之,您可以使用soup.find('', 'x-btn x-component x-btn-text-icon')找到您的表,并使用以下方法在id处获得:

soup.find('', 'x-btn x-component x-btn-text-icon')['id']

你可以试试这个:

dict(soup.find('table', {'class' : ' x-btn x-component x-btn-text-icon'}).attrs)['id']

class是一个关键字,因此无法写入class = ...。这就是字典。您还需要将attributes集合强制转换为字典,以使用id作为键。在

相关问题 更多 >