到目前为止,我正在尝试在value =字段后打印文本。
<div class="controls"><input class="span12 text-bound" id="client_appbundle_prospecttype_name" maxlength="100" name="client_appbundle_prospecttype[name]" required="required" type="text" value="John Smith"/></div>
我的代码如下。
soup = BeautifulSoup(html, 'lxml')
contact = soup.find('div', {"class": "controls"})
print(contact)
如何打印“ value =”后面的文本,所以只有约翰·史密斯
谢谢!
答案 0 :(得分:0)
使用CSS选择器时使用id更快,并且应该在可用时成为您的首选(而且在页面上真正独一无二)。然后,您可以使用.get
来访问匹配元素的value
属性的值。
from bs4 import BeautifulSoup
html = '<div class="controls"><input class="span12 text-bound" id="client_appbundle_prospecttype_name" maxlength="100" name="client_appbundle_prospecttype[name]" required="required" type="text" value="John Smith"/></div>'
soup = BeautifulSoup(html, "lxml")
print(soup.select_one('#client_appbundle_prospecttype_name').get('value'))