我正在使用 BeautifulSoup
获取在 html 中设置的属性的值。
这是 html:
<td align="center" bgcolor="white"><input name="period" type="radio" value="3"/></td>
<td align="center" bgcolor="white"><input checked="" name="period" type="radio" value="1"/></td>
<td align="center" bgcolor="white"><input name="period" type="radio" value="2"/></td>
<td align="center" bgcolor="white"><input name="period" type="radio" value="4"/></td>
<td align="center" bgcolor="white"><input name="period" type="radio" value="5"/></td>
我知道要获取句点的值(如果只有一个),那么我可以使用以下内容:
period = soup.find(name="input", attrs={'name': 'period'})['value']
但是,由于有多个句点
,并且我只对指定了值checked
的句点感兴趣,所以我尝试了以下操作:
period = soup.find(name="input", attrs={'checked':'', 'name': 'period'})['value']
但作为 checked=''
的值,它只是默认为它遇到的第一个period
。
如何解决这个问题
还有一个问题,如果我有并且我想获取周期的值,但仅限于指定了已检查参数的字段,但已检查为“”(我假设这就是原因),当我将其设置为attrs有什么建议吗?
最佳答案
我遇到了类似的问题:
您需要将 'checked':''
更改为 'checked':True
所以应该是:
period = soup.find(name="input", attrs={'checked':True, 'name': 'period'})['value']
关于python - 当参数为 ='' 时,使用 Beautiful Soup 访问属性参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19467151/